请建议如何将参数传递到使用setInterval的函数中。

我的例子setInterval(funca(10,3), 500);是不正确的。


当前回答

另一个解决方案是像这样传递你的函数(如果你有动态变量): setInterval(“funca (' + x + ', ' + y + ') ', 500);

其他回答

到目前为止,最实用的答案是tvanfosson给出的,我所能做的就是给你一个ES6的更新版本:

setInterval( ()=>{ funca(10,3); }, 500);

另一个解决方案是像这样传递你的函数(如果你有动态变量): setInterval(“funca (' + x + ', ' + y + ') ', 500);

您需要创建一个匿名函数,这样实际的函数就不会立即执行。

setInterval( function() { funca(10,3); }, 500 );

此外,与IE支持> 9,你可以传递更多的变量内部设置间隔,将采取你的函数。例句:

function myFunc(arg1, arg2){};
setInterval(myFunc, 500, arg1, arg2);

问候!

     setInterval(function(a,b,c){

          console.log(a + b +c);  

      }, 500, 1,2,3);

           //note the console will  print 6
          //here we are passing 1,2,3 for a,b,c arguments
         // tested in node v 8.11 and chrome 69