美文网首页Web前端之路
关于setTimeout()你所不知道的地方

关于setTimeout()你所不知道的地方

作者: 小生王浩 | 来源:发表于2020-05-27 15:37 被阅读0次

今天原本想要写下其他的函数的,但是刚刚遇见一个函数,也就是setTimeout,这个函数,之前一直有种写法,一直总觉得有点迷糊,相信大家会遇到过,也就是说for循环里面弄个setTimeout,然后里面想要每隔1秒钟输出一个数字

    就把for循环里面的index输出下,但是如果想要for循环里面直接写一个定时器,相信大家都可以弄出来,但是结果就不是我们想要的了,因为是定时器执行的时候我们的循环已经执行完了,所以到最后index只能是window的index了

    今天还看到一个for循环的写法的一个文章,就是把for循环分成多种的写法,看了这个应该大家就知道index为啥是window的了

地址:

https://www.cnblogs.com/similar/p/9405983.html

    这个里面有好几种,然后第四种的话就是属于分解化的了,从而得知,我们现在所使用的index本来就是属于是window的,然后之前遇见过一次,具体的看了下setTimeout的使用,然后从mdn上看到setTimeout的参数,其实后面还是可以传参的

    如果没有看到过这个,我们普遍的方法,相信大家基本都会弄一个匿名函数,然后直接执行,从里面接受一个index参数,这样也可以解决这个问题,就相当于函数里面接收的index是属于新的,有作用域效果的

    所以这样的写法也是可以的:

    然后如果知道第三个参数后,基本就可以省去这样的写法了,因为这样的写法,其实很难看,而且意思有点难懂,现在有第三个参数弄过来,基本就可以瞬间看懂了

    参数名基本都是一样的,因为换成其他的感觉就乱了,里面的i,不管是哪里的,里面的东西都是一个,这样的写法就相当于加个匿名函数类似了

    具体的语法是这样的:

    然后这个是这样的,同样的,setInterval也是一样的,语法和这个基本上算是一模一样了

    所以以后如果有类似的东西,也就不用那么麻烦的写个匿名函数传参了

    好了今天就说到这里了,想到啥说啥,什么好用什么来

相关文章

  • 关于setTimeout()你所不知道的地方

    今天原本想要写下其他的函数的,但是刚刚遇见一个函数,也就是setTimeout,这个函数,之前一直有种写法,一直总...

  • 你所不知道的setTimeout

    JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInt...

  • 你所不知道的setTimeout和setInterval

    JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInt...

  • Window.setTimeout 常见用法

    关于 window.setTimeout() 语法: var timeoutID = setTimeout(fun...

  • setTimeout与setInterval

    (用于什么情况?) (用setTimeout模拟setInterval) 一、setTimeout需要注意的地方 ...

  • 关于setTimeout

    先看一段代码: 输出结果是什么? 这里涉及到一个概念,首先JS是单线程的,而在JS中有两种任务:1)同步任务:同步...

  • 关于setTimeout

    JavaScript引擎是单线程运行的,浏览器无论在什么时候都只且只有一个线程在运行JavaScript程序. 浏...

  • 关于爱情你所遗憾的地方

    清晨,你在被子里蜷缩得像一只小猫,贪恋它温暖怀抱,只能无奈的替你撩开凌乱的发梢,催促着你赶紧起来,洗手间里面早已为...

  • setTimeout(func,0)

    1、js中setTimeout()时间参数设置为0的探讨2、关于SetTimeout 时间设为0时。

  • 你不知道的JavaScript -- setTimeout

    谈起setTimeout,就让我想起了一道经典的前端面试题 看到这几行代码,看过类似题目的大家肯定都知道结果是输出...

网友评论

    本文标题:关于setTimeout()你所不知道的地方

    本文链接:https://www.haomeiwen.com/subject/plwwahtx.html