我试图创建一个变量,在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
是否有更简单或更合适的方法来获取这个值?
您可以尝试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;
你可能会喜欢这个
是的,我喜欢使用MomentJS来处理JavaScript日期和时间的许多问题。它允许你:
moment() //now, whatever the local time is
.format('YYYY-MM-DD HH-mm-ss') // "2014-05-23 21-48-11"
简单:)