小编JmL*_*ier的帖子

为什么日期2014年10月31日和2014年11月01日使用日期对象在Javascript中具有相同的值?

为什么在下面的代码两个日期都相同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)

即使提供的日期不同,为什么这些值会相同?

javascript date

4
推荐指数
1
解决办法
57
查看次数

标签 统计

date ×1

javascript ×1