我正在尝试创建一个在JavaScript中保存格式化日期显示的变量。我想要的是将值设置为年 - 月 - 日 - 小时 - 分 - 秒。到目前为止,这就是我所拥有的。
toJSON方法更改时区,我希望它代表我的本地时间。这就是我添加getTimezoneOffset代码的原因。
var date = new Date(Date.now() - (new Date().getTimezoneOffset() * 1000 * 60)).toJSON().replace(/T/, ' ').replace(/:/g, '-').split('.')[0];
console.log(date); // 2014-05-23 22-24-26
是否有更简单或更合适的方法来获取此值?
答案 0 :(得分:1)
是的,我喜欢使用MomentJS来处理JavaScript日期和时间的许多问题。它允许您:
moment() //now, whatever the local time is
.format('YYYY-MM-DD HH-mm-ss') // "2014-05-23 21-48-11"
简单:)
答案 1 :(得分:1)
您可以尝试toLocaleString()
,例如:
var d = new Date().toLocaleString(); // 5/24/2014 3:11:16 AM
但要格式化日期,您可以尝试这样的事情(或其他方式):
var d, t;
d = new Date();
d = (d.toLocaleString()).split(' ');
t = d[1];
d = d[0].split('/');
d = d[2] + '-' + d[1] + '-' + d[0] + ' ' + t;