当我使用new Date时,我得到如下内容:
Wed Mar 21 2018 16:14:50 GMT+0530 (India Standard Time)
但我想要的是 xxxxxxxxxxxxxxxx
/( 21032018041217PM
( 格式的时间字符串
这里(21032018041217PM
(是21是date, 03-month, 2018-year, 04-time, 12-minutes, 17-seconds
,应该是AM/PM
。
Moment.js来实现所需的格式:
console.log( moment().format('DDMMYYYYhhmmssA') )
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.21.0/moment.min.js"></script>
var date = new Date();
var dateFormat = (date.getDate().toString().length == 1? "0":'' ) + date.getDate() + (date.getMonth().toString().length == 1? "0":'' ) + date.getMonth() + "" + date.getFullYear()
var hours = ((date.getHours()%12).toString().length == 1?'0':'') + "" + (date.getHours()%12);
var minuts = ((date.getMinutes()).toString().length == 1?'0':'') + "" + (date.getMinutes());
var seconds = ((date.getSeconds()).toString().length == 1?'0':'') + "" + (date.getSeconds());
var format = (date.getHours() >= 12 && date.getHours()%12 != 0) ? 'PM':'AM'
var yourDate = dateFormat + hours + minuts + seconds + format
您可以使用momentjs
库轻松处理此问题。文档在这里非常详细:https://momentjs.com/docs/#/displaying/
它将允许您以任何您想要的方式处理日期格式。
您可以从这里下载:https://momentjs.com/
不使用momentJS
库:
要将当前日期和时间转换为 UNIX 时间戳,请执行以下操作:
var ts = Math.round((new Date()).getTime() / 1000);
getTime(( 从 UNIX 纪元返回毫秒,因此将其除以 1000 得到秒表示形式。它使用 Math.round(( 四舍五入以使其成为整数。"ts"变量现在具有与用户 Web 浏览器相关的当前日期和时间的 UNIX 时间戳。
你也可以看看这里:如何在 JavaScript 中获取时间戳?
我建议时刻.js否则您可以进行字符串连接并小心计算月份是 0-11,这意味着 3 实际上可能是 04 而不是 03。
我这样使用,
date.getDate()+""+(date.getMonth() + 1)+""+date.getFullYear()+""+ date.getHours()+""+date.getMinutes() +""+date.getSeconds();
但是这个结果的格式2132018163431
我得到的