好的,这个问题还有几个问题.
首先,我问这个是setTimeout()和setInterval()
我已经看到了几种不同的方式来调用它们,我想知道哪种方式最适合这种情况.
我正在制作一个js/canvas游戏,我只是查看我的绘制间隔(它循环绘制方法)
无论如何,这是我见过的不同方式......
A部分:
使用窗口.
drawInterval = window.setInterval(draw, 60);
Run Code Online (Sandbox Code Playgroud)不使用窗口.
drawInterval = setInterval(draw, 60);
Run Code Online (Sandbox Code Playgroud)B部分:
不使用函数名称周围的引号和括号
drawInterval = setInterval(draw, 60);
Run Code Online (Sandbox Code Playgroud)在函数名称周围使用引号和括号
drawInterval = setInterval("draw()", 60);
Run Code Online (Sandbox Code Playgroud)所以对于A部分:我应该使用窗口.或不?那么window.clearInterval()和clearInterval本身呢?
对于B部分:我应该使用引号和括号吗?之前我被告知在这种情况下使用引号和括号是个坏主意.
g.d*_*d.c 24
除非你已经宣布了自己的本地范围setInterval功能,否则setInterval和之间没有区别window.setInterval.
第二种形式使用隐含的eval().应尽可能避免这种情况,因为它提供了代码注入的潜力.