为什么在下面的代码两个日期都相同valueOf(),并getTime()?
<script>
var endDt = new Date(2014,10,31);
var endDt2 = new Date(2014,11,1);
alert("getTime()\nendDt : "+endDt.getTime()+"\nendDt2: "+endDt2.getTime());
alert("valueOf()\nendDt : "+endDt.valueOf()+"\nendDt2: "+endDt2.valueOf());
</script>Run Code Online (Sandbox Code Playgroud)
我们可以看到两个值都是等于的.
如果用户尝试超过31天的间隔,我想获取用于锁定用户的值.但是当用户将开始Date(2014,10,01)和结束时Date(2014,11,1)javascript解释为结束时Date(2014,10,31).当我做计算.如果开始日期和结束日期之间存在差异,则两个值都相同.
<script>
var startDt = new Date(2014,10,01);
var endDt = new Date(2014,10,31);
var endDt2 = new Date(2014,11,1);
var diff = endDt.getTime()-startDt.getTime();
var diff2 = endDt2.getTime()-startDt.getTime();
alert("getTime()\ndiff: "+diff+"\ndiff2: "+diff2);
diff = endDt.valueOf()-startDt.valueOf();
diff2 = endDt2.valueOf()-startDt.valueOf();
alert("valueOf()\ndiff: "+diff+"\ndiff2: "+diff2);
</script>Run Code Online (Sandbox Code Playgroud)
即使提供的日期不同,为什么这些值会相同?