看到别人的一篇文章,突然发现一个平常得不能再平常的函数setTimeout()函数,竟然还有第三个参数!

而在平时的使用中,我们一般只用到前面的两个参数:

code:延迟时间到期之后执行的代码块
ms:延迟时间

然后自己带着疑惑去查阅MDN之后,才发现,原来setTimeout函数不止有第三个参数,后面甚至可以紧跟无数个参数!

其原文函数形式如下:

var timeoutID = scope.setTimeout(function[, delay, param1, param2, ...]);
var timeoutID = scope.setTimeout(function[, delay]);
var timeoutID = scope.setTimeout(code[, delay]);

Additional parameters which are passed through to the function specified by functionor code once the timer expires.

上面这句话的意思是:param1,param2...paramN作为前面的回调函数的附加参数.
setTimeout((a,b,c) => {
   console.log(a,b,c)
}, 2000, "my", "name", "is starsion");
my name is starsion

 

posted on 2020-12-18 16:02  京鸿一瞥  阅读(516)  评论(0)    收藏  举报