常见错误九:用字符串作为setTimeout 或者 setInterval的第一个参数

最后更新于:2022-04-01 01:49:29

首先我们要声明,用字符串作为这两个函数的第一个参数并没有什么语法上的错误。但是其实这是一个非常低效的做法。因为从系统的角度来说,当你用字符串的时候,它会被传进构造函数,并且重新调用另一个函数。这样会拖慢程序的进度。 ~~~ setInterval("logTime()", 1000); setTimeout("logMessage('" + msgValue + "')", 1000); ~~~ 另一种方法是直接将函数作为参数传递进去: ~~~ `setInterval(logTime, 1000); setTimeout(function() { logMessage(msgValue); }, 1000);` ~~~
';