闭包的应用场景一:setTimeout

应用场景一:setTimeout

原生的setTimeout有一个缺陷,你传递的第一个函数不能带参数。即浏览器

setTimeout(func(parma),1000);

这样的语句是不生效的(不过在不一样浏览器中有不一样的错误,总之都没法达到预期效果)闭包

这时,咱们就能够用闭包来实现这个效果了。函数

function func(param) {
    return function() {
        alert(param);
    }
}
var f = func(1)
setTimeout(f, 1000);
相关文章
相关标签/搜索