关于参数是函数时,带不带括号的问题

代码1:time=setInterval("cc()",speed);

如果把代码1,这样操作window.onload=function(){代码1};会报错.需要改为把代码1,改为代码2:time=setInterval(cc,speed);

但是如果把script放在body标签的末尾,那么代码1,或者代码2都可以运行.

实际上,不止setInterval有这个问题,其他函数也有这个问题.

星星3394050
浏览 1602回答 3
3回答

星星3394050

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"/> <title>window.onload</title> </head> <body> <div id="kk">i<br /></div> <script> // window.onload=function () { kk=document.getElementById('kk'); var i=0; setInterval('cc()',200) function cc() { kk.innerHTML+=i; i++; } // } </script> </body> </html>可能问的比较有歧义,我再举一个例子.代码如上.现在是可以运行的,但是当我现在不注释第11行以及第19行代码时,报错.此时把第14行的['cc()']改为[cc];又可以运行...究竟为什么?
打开App,查看更多内容
随时随地看视频慕课网APP