美文网首页前端
for in & for of &foreach

for in & for of &foreach

作者: Ann_l | 来源:发表于2017-05-30 13:13 被阅读5次

    之前我一直都不太明白for in 和for of 的区别,感觉都一样用。

    今天拜读了廖雪峰的js,决定把他的js撸一遍

    for in 和for of 都用于遍历

    但是 for in 会把附加的内容给遍历输出

    const a= ['1','2','3']

    a.name='hello'

    console.log(a)// [ '1', '2', '3', name: 'hello' ]

    for(letiina) {

    console.log(i+'='+a[i])

    }

    输出:

    0=1

    1=2

    2=3

    name=hello

    console.log(a.length)//3 

    你看,添加额外属性以后,能遍历出来,但是length却还是3

    而 for of 只是遍历自己定义时的内容

    而我最喜欢的还是foreach,注意点:有三个参数:item,index,array

    set 和 foreach 结合使用,set没有索引index,所以只有2个参数,可以如下写法

    const  b=newSet(['A','B','C'])

    b.forEach(function(element, sameElemnt, set){

    console.log(element)// A

    console.log(set)// Set { 'A', 'B', 'C' }

    })

    map和foreach 结合使用,有三个参数哦

    constc=newMap([[1,'1'], [2,'2'], [3,'3']])

    c.forEach(function(value,key,map) {

    console.log(key)

    console.log(value)

    console.log(map)

    })

    相关文章

      网友评论

        本文标题:for in & for of &foreach

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