setInterval("RunSlide()", 5000);
首先,使用括号和引号调用一个函数。
setInterval("RunSlide", 5000);
第二步,使用引号调用一个无需括号的函数。
setInterval(Runslide, 5000);
第三步,调用一个没有括号和引号的函数。
RunSlide();
第四步,使用括号调用一个函数。
RunSlide;
第五,调用函数时不需要括号。
setInterval("RunSlide()", 5000);
首先,使用括号和引号调用一个函数。
setInterval("RunSlide", 5000);
setInterval(Runslide, 5000);
RunSlide();
RunSlide;
setInterval("作为字符串的参数", delay)
这将导致与将字符串传递给eval
相同的行为,因此不建议使用(出于同样的原因,有关此主题的更多信息可以在网上找到)。
示例片段:
setInterval ("console.log ('hello world');", 100);
setInterval (func_reference, delay, param1, param2, ...)
这将导致指向 func
的函数被调用,这是推荐的选项。如果您以这种方式调用函数,还可以传递参数给要执行的函数。
示例代码片段:
function say_it (word1, word2) {
console.log (word1 + " " + word2);
}
setInterval (say_it, 100, "hello", "world");
setInterval (function (word1, word2) {
console.log (word1 + " " + word2);
}, 100, "hello", "world);
使用只包含函数名称的字符串作为 setInterval
的第一个参数是毫无意义的,该函数不会被执行。这与在代码中编写以下内容相同。
alert;
RunSlide();
和RunSlide;
之间的区别应该很明显了。前者将调用名为RunSlide的函数,而后者则不会(根本不执行任何操作)。
( )
运算符时,就会进行函数调用。如果没有跟随( )
运算符,它就只是对该对象的引用,就像对任何其他对象的引用一样。 - Pointy