刚刚测试了下setInterval和setTimeout,clearInterval, 有如下代码:
function a(){ var end = setInterval(f,1000); setTimeout(clearInterval(end),10000); }
在调用a()的时候,浏览器没有反应,也没有报错,后来把代码改成如下形式:
function a(){ var end = setInterval(f,1000); setTimeout(function(){clearInterval(end)},10000); }
重新 调用a(),一切正常,这是怎么回事
setTimeout 第一个参数要个函数对象做参数,
clearInterval(end)
这个是句语句,不是函数对象。
clearInterval(end) 是表达式;
setTimeout(方法);
可以这样:
setTimeout(function aaa(){ ....});
也可以:
setTimeout(aaa);
function aaa(){
}