我从graph.facebook API获取了一个日期字符串"2011-11-24T09:00:27 + 0000".
我跑的时候
var timestamp = Date.parse(facebookDate);
Run Code Online (Sandbox Code Playgroud)
在铬.我得到一个与日期有关的时间戳!完善!
但在其他主流浏览器中...我得到"NaN"!!! ?
当然所有这些浏览器都使用相同的JavaScript解析功能吗?
任何人都可以解释为什么相同的javascript函数给出不同的结果?
任何人都可以告诉我如何解决这个问题......
提前致谢
亚历克斯
我正在使用RSS提要中的日期,但在IE,Chrome和Firefox中使用以下代码时,我发现了不同的结果:
new Date('2001-01-01T12:00:00Z')
Run Code Online (Sandbox Code Playgroud)
Firefox很满意,但Chrome和IE返回Invalid Date.
我以为我会尝试更换T和Z如下:
new Date('2001-01-01 12:00:00')
Run Code Online (Sandbox Code Playgroud)
这次Chrome很满意,但Firefox和IE返回Invalid Date.
有什么想法我应该做什么来在这种格式的所有浏览器中获取日期对象?!
非常感谢,蒂姆
让以下片段:
var dateJS = new Date("1950-09-09T23:00:00.000Z");
var dateMoment = moment("1950-09-09T23:00:00.000Z");
console.log("Javascript Epoch Time:", dateJS.valueOf());
console.log("Moment Epoch Time:", dateMoment.valueOf());
console.log("Is DST?", dateMoment.isDST());Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.23.0/moment.min.js"></script>Run Code Online (Sandbox Code Playgroud)
如果您使用某些 Firefox 版本(例如 Firefox 61.0.1)或 Microsoft Edge 运行它,您将获得Is DST? true. 相反,如果您使用其他一些 Firefox 版本(例如 64.0)或任何 Chrome 运行它,您将获得Is DST? false.
可能是什么原因?
新片段:
var mar1947 = moment("1947-03-20T00:00:00.000Z");
var sep1947 = moment("1947-09-10T00:00:00.000Z");
var mar1950 = moment("1950-03-20T00:00:00.000Z");
var sep1950 = moment("1950-09-10T00:00:00.000Z");
var mar2019 = moment("2019-03-20T00:00:00.000Z");
var sep2019 = moment("2019-09-10T00:00:00.000Z");
console.log("March 1947: Epoch Time / DST:", mar1947.valueOf(), mar1947.isDST());
console.log("September …Run Code Online (Sandbox Code Playgroud)