课程
/前端开发
/JavaScript
/JavaScript进阶篇
在mydate.getTime()+60*+60*1000中,没明白为什么有这么一串数字,推迟一小时干嘛不直接+1呢?
2016-07-28
源自:JavaScript进阶篇 7-5
正在回答
因为 setTime() 函数要求的参数格式是毫秒,如果直接加 1,对系统来说,就是加了 1 毫秒,而非 1 小时,要加 1 小时,就需要把 1 小时转化为毫秒数传入 setTime() 函数。
你把
document.write(mydate.getTime()+"</br>");
放在公式中会发现输出的并不是几时,而是一大串数字。比如今天是7月29日 9:29分,输出的数据为1469755221260。
1469755221260/1000/60/60/24/365=46.6年
返回值/1000毫秒/60秒/60分/24小时/365天=46.6年
所以
mydate.getTime()返回的值是距 1970 年 1 月 1 日到现在的毫秒数,并不是简单现在是几时。
所以需要在mydate.getTime()的后面加(+60*+60*1000)。
getTime() 方法可返回距 1970 年 1 月 1 日之间的毫秒数。
1小时=60分=3600秒=60*60*1000毫秒
水里有条鱼
举报
本课程从如何插入JS代码开始,带您进入网页动态交互世界
4 回答第9行是把mydate赋值了么?mydate.setTime( mydate.getTime() + 2* 60 * 60 * 1000);
6 回答我也想不明白为什么var b=mydate.setTime(use + 2* 60 * 60 * 1000);这个就不行呢?
4 回答我把1000改成1000*60,它反而计数更快了。
2 回答推迟1小时是60 * 60 * 1000 那么提前一小时 提前两小时呢?
8 回答numa&&numb>=60 和 numa>=60&&numb>=60 有什么区别?