javascript Date如何解释毫秒整数?
var d = new Date(-1724115600000); //this gives me a date in the past, which I want
console.log(d);
var d = new Date(1724115600000);
console.log(d);
(我们有一个错误,其中 - 符号没有通过。但我不明白 - 的重要性 - )
答案 0 :(得分:2)
0将是1. 1970年1月。增量以无符号数表示,表示毫秒。如果您想要之前的日期,则需要使用负值(以毫秒为单位)。
您提供的负数将在过去提供一个数字,另一个在未来:
日期1915-05-14T23:00:00.000Z
日期2024-08-20T01:00:00.000Z
如果您在过去使用第二个号码,那么当您尝试时,它可能已经丢失了最后一个数字。在这种情况下,它会给出:
日期1975-06-19T12:06:00.000Z
var d = new Date(-1724115600000); //this gives me a date in the past, which I want
document.write(d + "<br>");
var d = new Date(1724115600000); //This gives me a date in the past too.
document.write(d + "<br>");
var d = new Date(172411560000); //missing last digit
document.write(d);
答案 1 :(得分:2)
Date
对象构造函数可以使用variety of inputs,但以这种方式调用它时使用整数值1:
整数值,表示自1970年1月1日00:00:00 UTC(Unix Epoch)以来的毫秒数。
负值会在Unix Epoch之前给出日期,正值是在Epoch之后的日期。
答案 2 :(得分:1)
//negative sign give you the date before 1970. in your example
var d = new Date(-1425223942000);// this gives date in the past
document.write(d) //Sun Nov 02 1924 03:27:38 GMT-0500 (Eastern Standard Time)
document.write('<br/>')
var d = new Date(1425223942000); //This gives date in th future.
document.write(d); // Sun Mar 01 2015 10:32:22 GMT-0500 (Eastern Standard Time)
//Unfortunately i cannot post the screenshots yet