我正试图做一些类似于上次更改后的事情。
<script language="javascript">
var x = new Date(Date.parse(document.lastModified));
document.write(x - document.lastModified);
</script>
我有这个代码,但我得到的是NaN而不是时间。怎么了?
试着考虑通过自己评估代码来解决问题。以下是在"逐帧"视图中的评估结果:
1
var x = new Date(Date.parse(document.lastModified));
document.write(x - document.lastModified);
2
var x = new Date(Date.parse("11/29/2013 14:37:21"));
document.write(x - document.lastModified);
3
var x = new Date(1385753841000);
document.write(x - document.lastModified);
4
var x = "Fri Nov 29 2013 14:37:21 GMT-0500 (EST)";
document.write(x - document.lastModified);
5
document.write("Fri Nov 29 2013 14:37:21 GMT-0500 (EST)" - "11/29/2013 14:37:21");
6
document.write(NaN);
你得到了一个NaN,因为字符串减去字符串===NaN
。
解析日期的第3帧返回UNIX Epoch时间戳(自1970年午夜GMT以来的秒数)。你可以减去两个时期,得到秒的差值。