在json的回复中我得到GMT格式的日期,如 2016-03-09T09:55:47.107111 。每当我尝试使用以下代码转换为本地日期/时间格式时: -
new Date('2016-03-09T09:55:47.107111').toLocaleString()
我得到这样的输出: -
铬
"09/03/2016, 15:25:47" Which is correct
Mozilla Firefox
"3/9/2016, 9:55:47 AM" Which is wrong
新日期(' 2016-03-09T09:55:47.107111')。toLocaleString()无法在Firefox上运行。
答案 0 :(得分:3)
根据MDN specification of Date," dateString"可以是符合IETF的RFC 2822时间戳或ISO8601的版本。你的日期字符串都不是它。我甚至不确定" 107111"在你的字符串的末尾应该是,那么计算机应该如何解决这个问题呢?
一般情况下,建议使用格式为" YYYY-MM-DDTHH:mm:ss.sssZ"的日期字符串。
答案 1 :(得分:1)
在js文件中你写
$scope.date=new Date('2016-03-09T09:55:47.107111');
你写的html文件中的
{{date | date :'dd/MM/yyyy h:mm:ss'}}
它可以在任何浏览器上运行
答案 2 :(得分:0)
您始终可以通过将其传递给toLocaleString函数来指定本地化。 例如:
new Date('2016-03-09T09:55:47.107111').toLocaleString("en-GB");
将导致:
09/03/2016, 11:55:47
在Chrome和& Firefox浏览器。
请注意:
new Date('2016-03-09T09:55:47.107111').toLocaleString("en-GB");
new Date('2016-03-09 09:55:47.107111').toLocaleString("en-GB");
将为您提供不同的时间输出(首先将添加UTC的区域设置差异,第二个不会。