云鬓花颜
2014-12-25 17:11
var mydate=new Date();
document.write("当前时间:"+mydate+"<br>");
var use=mydate.getTime();
mydate.setTime(use + 2* 60 * 60 * 1000);
document.write("推迟二小时时间:" + mydate);
显示结果:
当前时间:Thu Dec 25 2014 17:10:57 GMT+0800 (中国标准时间)
推迟二小时时间:Thu Dec 25 2014 19:10:57 GMT+0800 (中国标准时间)
这样的代码是可以的,var use=mydate.getTime();get/setTime() 返回/设置时间,getTime()返回时间是可以声明一个变量的,
但是setTime()就不可以呢?
var mydate=new Date();
document.write("当前时间:"+mydate+"<br>");
var b= mydate.setTime(mydate.getTime() + 2* 60 * 60 * 1000);
document.write("推迟二小时时间:" + b);
显示结果:
当前时间:Thu Dec 25 2014 17:09:28 GMT+0800 (中国标准时间)
推迟二小时时间:1419505768480
我觉得是进行了数值类型的默认转换,不知道理解的对不对。
我试了,也不行,我觉得楼上的解释不对
setTime()和getTime()的返回值都是从1970年到现在毫秒数。 你这个b就是把毫秒输出来了。
只有Date()对象本身其输出值才是正常的时间 也就是输出mydate
首先,setTime改变的是这个mydate的值,然后我们再输出mydate看到被修改的时间,但是如果你输出b,相当于输出了函数setTime
前面那个输出的是mydate,后面这个输出b,相当于输出了mydate.setTime()。
我这可以的啊,你把代码放在本地试试看?
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题