Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Date.parse()与moment().unix()的比较_Javascript_Date_Momentjs - Fatal编程技术网

Javascript Date.parse()与moment().unix()的比较

Javascript Date.parse()与moment().unix()的比较,javascript,date,momentjs,Javascript,Date,Momentjs,比较Date.parse()和moment().unix()的结果时,我得到的毫秒数可能有很大差异。不确定我遗漏了什么,因为.parse()和.unix()都要以毫秒为单位返回日期/时间字符串 示例: const endDate = '2019-05-29 17:00:00'; console.log("Moment: ", moment(endDate).unix()); // 1559142000 console.log("Parse: ", Date.parse(new Date(end

比较
Date.parse()
moment().unix()
的结果时,我得到的毫秒数可能有很大差异。不确定我遗漏了什么,因为
.parse()
.unix()
都要以毫秒为单位返回日期/时间字符串

示例:

const endDate = '2019-05-29 17:00:00';

console.log("Moment: ", moment(endDate).unix()); // 1559142000
console.log("Parse: ", Date.parse(new Date(endDate))); // 1559142000000
moment(endDate).unix()返回自1月1日起的unix时间(秒)。1970年

Date.parse(新日期(endDate))
返回自1月1日起的毫秒数。1970年,或unix时间的1000倍
Date.parse(新日期(endDate))/1000
是unix时间

JavaScript使用毫秒作为度量单位,而Unix时间以秒为单位

查看Date上的方法“它是自1970年1月1日星期四协调世界时(UTC)00:00:00以来经过的秒数”

矩的
unix()
函数返回的量是自此之后的秒数


Date.parse()
将返回自1970年1月1日00:00:00 UTC以来的毫秒数

它们将需要不同的执行时间,无法在完全相同的时间运行它们…在您的代码日期中。Parse()在片刻之后运行。unix()已经完成…
Date。Parse(new Date(endDate)))
需要对日期进行两次解析
Date.parse(endDate))
将给出相同的结果并进行一次解析。Safari将返回
NaN
。令人遗憾的是,我相信
。getTime()
具有不稳定的浏览器支持,即使使用babel,我在Safari中也遇到了问题。