zoukankan      html  css  js  c++  java
  • ES6,数组遍历

    ES6提供了entries(),keys(),values()方法返回数组的遍历器,对于遍历器(Iterator)可以使用for...of进行便利,也可是使用entries()返回的遍历器Iterator.next()方法进行遍历。

    1.使用keys()遍历。

    keys()返回的是数组元素索引号的遍历器。

    const arr1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']
    for (let index of arr1.keys()) {
      console.log(index);
    }

    结果:

    可以看到输出的都是每个数组元素的index。

    0  
    1  
    2  
    3  
    4  
    5  
    6  
    7  
    8  
    9  
    10 

    2.使用values()遍历。

    values()返回的是数组元素值的遍历器。

    for (let val of  arr1.values()) {
      console.log(val);
    }

    结果:

    a 
    b 
    c 
    d 
    e 
    f 
    g 
    h 
    i 
    j 
    k 

    3.使用entries()遍历。

    配合解构使用,可以拿到元素的index和value。

    for (let [index, val] of arr1.entries()) {
      console.log(index, val);
    }

    结果:

    0 'a'
    1 'b'
    2 'c'
    3 'd'
    4 'e'
    5 'f'
    6 'g'
    7 'h'
    8 'i'
    9 'j'
    10 'k'

    4.使用Iterator.next()遍历。

    基于entries()返回的遍历器,调用遍历器的next()的方法可以获取每一个元素的访问入口,该入口有一个done属性可以表明是否便利结束。通过入口可以拿到value属性,其就是元素的索引和值的数组。

    let arrEntries=arr1.entries();
    let entry=arrEntries.next();
    while(!entry.done){
      console.log(entry.value);
      entry=arrEntries.next();
    }

    结果:

    [ 0, 'a' ]
    [ 1, 'b' ]
    [ 2, 'c' ]
    [ 3, 'd' ]
    [ 4, 'e' ]
    [ 5, 'f' ]
    [ 6, 'g' ]
    [ 7, 'h' ]
    [ 8, 'i' ]
    [ 9, 'j' ]
    [ 10, 'k' ]

    End

  • 相关阅读:
    EntityFramework+MySql 笔记2
    EntityFramework+MySql 笔记1
    软件详细设计文档(终)
    软件测试文档(终)
    软件测试计划文档(初)
    软件概要设计文档(终)
    软件需求规格说明文档(终)
    例会记录(六)
    例会记录(五)
    例会记录(四)
  • 原文地址:https://www.cnblogs.com/kongxianghai/p/7542070.html
Copyright © 2011-2022 走看看