最新回答 / 辉辉1
window.onload = function(){ var timedate= new Date("2018,4,12"); //自定义结束时间 var now = new Date() ; //获取当前时间 var date = timedate.getTime() - now.getTime(); //得出的为毫秒 var time = Math.ceil(date/(24*60*60*1000)) ; //1000 * 60 * 60 * 24一天的秒...
2017-03-15
已采纳回答 / 熊猫兔击队
我个人的理解是,因为setTimeout是“等至少***ms才执行,且执行一次”,而不是“每隔***ms就执行(这是setInterval的功能)”。根据w3school的说明,setTimeout本身是没有循环的功能的。它之所以能“循环”是因为被showTime在内部的最后调用了,而showTime在调用setTimeout之前运行的代码也是要花时间的,那如果我们假设showTime的代码比较长,需要600ms才执行完,那你设setTimeout是500ms的话,总时间就是600 + 500 >1...
2017-03-08
最新回答 / 慕粉3951534
为了提高一点时间的精确度吧,如果不考虑其他因素,如代码执行耗时等等,仅从代码含义来说,每500毫秒执行一次能将所获得时间与标准时间误差控制在500毫秒内。比如:当你的代码获取时间时,已经是 00:00:01 过 500 毫秒,如果等 1000 毫秒后再次获取,则已经是 00:00:02 过 500 毫秒,依然差了 500 毫秒,但如果 500 毫秒后获取,则刚好是 00:00:02。再比如:在 00:00:01 过 800 毫秒 时获取时间,此时误差为 800 毫秒,如果等 1000 毫秒后再次获取,时间...
2017-01-11
已采纳回答 / littlemin
window.onload = function() { FreshTime(); } var sh; function FreshTime() { // clearInterval(sh); var endtime = new Date("2017/1/7,21:54:00"); //结束时间 var nowtime = new Date(); //当前时间 var lefttime = parseInt((endtime.getTime() - nowtime...
2017-01-07
已采纳回答 / weixin_慕莱坞0529652
function checkTime(i){ //补位处理 if(i<10) { i='0'+i; } return i; }这里你写错了。你的 if(i<10)之后,并没有return出来值。只有i>=10的时候你的这个函数才会return值。
2016-12-27
已采纳回答 / 慕仔3074982
t=setTimeout("showTime",500);showTime后边少了一对括号(),这里的意思是没500毫秒得调用一次函数,所以正确应该是t=setTimeout("showTime()",500);
2016-12-24
最新回答 / 给我一杯咖啡
setTimeout(表达式,延时时间)在执行时,是在载入后延迟指定时间后,去执行一次表达式,记住,次数是一次 而setInterval(表达式,交互时间)则不一样,它从载入后,每隔指定的时间就执行一次表达式所以,完全是不一样的 很多人习惯于将setTimeout包含于被执行函数中,然后在函数外再次使用setTimeout来达到定时执行的目的 这样,函数外的setTimeout在执行函数时再次触发setTimeout从而形成周而复始的定时效果 使用的时候各有各的优势,使用setInte...
2016-12-16