原来setTimeout不是我想的那样的。

步入前端一年了。

在我的脑海中,setTimeout,的用法应该是这样的:setTimeout(code,millisec);
code:要调用的函数后要执行的 JavaScript 代码串。
millisec:在执行代码前需等待的毫秒数。
一直以来,我都认定setTimeout的参数只能是两个。
直到,今天我看到这段setTimeout(resolve, ms, 'done');我瞬间懵逼了。这第三个参数是怎么回事。我以为是es6新添加的。然后上网查资料,发现es6根本没有添加这个,显然是之前就存在的一种用法。
于是,我开始思考,猜测第三个参数就是resolve的参数的值。
于是,我写了这么一段代码。

setTimeout(function(value){
  console.log(value);
},1000,'新年快乐');

控制台输出,‘新年快乐’;
事实证明,我的想法是正确的。
于是我又想,四个参数呢。

setTimeout(function(value1,value2){
  console.log(value1,value2);
},1000,'2017','新年快乐');

控制台成功输出,‘2017新年快乐’。

总结:

setTimeout的完整形式应该是这样的:setTimeout(code,millisec,a1,a2,...);其中,code,,illisec是必须的。其余参数依次是需要执行函数的参数。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • error code(错误代码)=0是操作成功完成。error code(错误代码)=1是功能错误。error c...
    Heikki_阅读 3,588评论 1 9
  • 本文适用的读者 本文写给有一定Promise使用经验的人,如果你还没有使用过Promise,这篇文章可能不适合你,...
    HZ充电大喵阅读 7,487评论 6 19
  • 去年6月份, ES2015正式发布(也就是ES6,ES6是它的乳名),其中Promise被列为正式规范。作为ES6...
    yzc123446阅读 345评论 0 1
  • 本文作者就是我,简书的microkof。如果您觉得本文对您的工作有意义,产生了不可估量的价值,那么请您不吝打赏我,...
    microkof阅读 16,081评论 9 40
  • https://nodejs.org/api/documentation.html 工具模块 Assert 测试 ...
    KeKeMars阅读 6,649评论 0 6

友情链接更多精彩内容