我有一个日期对象,由用户创建,时区由浏览器填充,如下所示:
var date = new Date(2011, 05, 07, 04, 0, 0);
> Tue Jun 07 2011 04:00:00 GMT+1000 (E. Australia Standard Time)
然而,当我将其字符串化时,时区就跟它说拜拜了
JSON.stringify(date);
> "2011-06-06T18:00:00.000Z"
在保留浏览器时区的同时获得 ISO8601字符串的最好方法是使用 Moment.js 和 moment.format()
,但是当然,如果我通过内部使用 JSON.stringify
(在本例中是 AngularJS)来序列化一个完整的命令时,这种方法就不起作用了
var command = { time: date, contents: 'foo' };
$http.post('/Notes/Add', command);
为了完整起见,我的域 是的需要本地时间和偏移量。