JavaScript · setTimeout补充

2019-09-12

写在前面

平时使用中,我们只会给setTimeout()传递两个参数。但其实该函数是支持多个参数的。

  • 参数1:可以是表达式或函数;
  • 参数2:可以省略,默认为0;
  • 参数3,4,···,n:传递给函数的参数;

用例

页面及需求:

<p>点击按钮 2 秒后输出 "hello"。</p>
<p>实例中,我们也会输出传递给 alertFunc() 函数的参数 ( IE9 及更早版本不支持 )。</p>

<button onclick="myStartFunction()">开始</button>

<p id="demo"></p>
<p id="demo2" style="color:red;"></p>

具体实现:

var myVar;
function myStartFunction() {
    myVar = setTimeout(alertFun,2000,'Angular','Vue');
}
function alertFun(param1,param2) {
    document.getElementById('demo').innerHTML = 'hello';
    document.getElementById('demo2').innerHTML = 'Frameworks: ' + param1 + ',' + param2;
}
var myVar;
function myStartFunction() {
    myVar = setTimeout((param1,param2) => {
        document.getElementById('demo').innerHTML = 'hello';
        document.getElementById('demo2').innerHTML = 'Frameworks: ' + param1 + ',' + param2;
    },2000,'Vue','Angular')
}

或者:

var myVar;
function myStartFunction() {
    myVar = setTimeout(() => {
        alertFun('Vue','Angular');
    },2000)
}
function alertFun(param1,param2) {
    document.getElementById('demo').innerHTML = 'hello';
    document.getElementById('demo2').innerHTML = 'Frameworks: ' + param1 + ',' + param2;
}
原文链接:segmentfault.com

上一篇:JavaScript和TypeScript中的void
下一篇:javascript垃圾回收与内存泄露
相关教程
关注微信

扫码加入 JavaScript 社区

相关文章

首次访问,需要验证
微信扫码,关注即可
(仅需验证一次)

欢迎加入 JavaScript 社区

号内回复关键字:

回到顶部