es6数组新方法

分手后的思念是犯贱 2021-08-14 00:58 696阅读 0赞

es6提供了3个新方法 —— entries 、keys 、values 用于遍历数组,它们都返回一个遍历器对象,可用for-of循环遍历。

它们唯一的区别在于:

entries:是对键值对的遍历

keys:是对键名的遍历

values:是对键值的遍历

让我们来看下具体操作以及用途:

  1. var arr = ['a', 'b'];
  2. // 遍历键名
  3. for (const index of arr.keys()) {
  4. console.log(index);
  5. // 0
  6. // 1
  7. }
  8. // 遍历键值
  9. for (const element of arr.values()) {
  10. console.log(element);
  11. // a
  12. // b
  13. }
  14. // 遍历键值对
  15. for (const obj of arr.entries()) {
  16. console.log(obj);
  17. // [0, "a"]
  18. // [1, "b"]
  19. }
  20. // 解构遍历键值对
  21. for (const [index, element] of arr.entries()) {
  22. console.log(index, element);
  23. // 0 "a"
  24. // 1 "b"
  25. }

1、遍历键名:这里arr.keys获取到数组遍历器对象(Array Iterator),通过循环得到键名,因为是数组,这里的键名就是下标

2、遍历键值:这里arr.values获取到数组遍历器对象(Array Iterator),通过循环得到键值,最终得到键值

3、遍历键值对:这里arr.entries获取到数组遍历器对象(Array Iterator),通过循环得到键值对数组,通过解构赋值拿到下标和值

如果不使用for-of循环,可以手动调用遍历器对象的next方法进行遍历:

  1. let letter = ['a', 'b', 'c'];
  2. let entries = letter.entries();
  3. console.log(entries.next().value);
  4. console.log(entries.next().value);
  5. console.log(entries.next().value);

效果:

20190920100737329.png

好了,以上就是这几个方法的介绍。

如有问题,请指出,接受批评。

个人微信公众号:

20200824115023215.png

发表评论

表情:
评论列表 (有 0 条评论,696人围观)

还没有评论,来说两句吧...

相关阅读

    相关 es6数组方法图解

    最近接触了一些 web前端开发人员,发现还是很多人不适用es6 提供的语义化api。 下面分享下看到的图解 es6 数组方法。 很形象的es6数组方法解释: ![请添