我们先来看一个例子
在JS方法里面设置一个for循环,输出每次循环的值,如下图
我们可以根据闭包的知识来更改一下for循环中的逻辑,利用闭包将i的值传递给a
这次在运行程序我们就可以看到输出内容是0开始输出了
结果如下图
JS中如果for循环中有异步方法,就需要用闭包的方式保留当前循环变量值
js延时5秒用find写法setTimeout(function(){ getSignature() },5000)在前端开发过程中,如果使用传统的纯js,有时会有延时执行一个方法的需求.
使用js实现几秒以后倒计时跳转,这个在某些特殊情况下还是比较实用的。
点击后等待调个睡眠函数,再接着执行正常逻辑function sleep(delay) { //delay:传入等待秒数
var start = (new Date()).getTime() //获取函数刚开始秒数
while ((new Date()).getTime() - start <delay) { //当当前时间减去函数刚开始时间小于等待秒数时,循环一直进行
continue
}