专栏首页MudOnTireJavascript中进行遍历操作的所有方法

Javascript中进行遍历操作的所有方法

以数组const arr = [1, 2, 3];为例,有如下的方法可以用于遍历操作:

for

  for (let i = 0; i < arr.length; i++) {
    console.log(arr[i]);
  }

for-in

  for(let index in arr){
    console.log(arr[index]);
  }

for-in实际是遍历一个对象的可枚举属性,是无序的遍历,所以在需要有序的遍历数组时不能用for-in

for-of

  for (let item of arr) {
    console.log(item);
  }

任何实现了可迭代协议(Iteration protocols) 的对象(Array,Map,Set,String等)都可用for-of进行迭代。

forEach

  arr.forEach((item, index) => {
    console.log(item);
  });

这里的forEach指的是Array.prototype.forEachforEach是数组特有的方法,其他数据结构不能使用该方法。当然某些数据结构也可以定义自己的forEach方法,比如通过document.querySelectorAll获取的NodeList也拥有自己的forEach方法,用法也和arryforEach一样,但他们不是一个东西。

map

 arr.map((item, index) => {
    console.log(item);
  });

注意:map会返回一个和元素组长度一样的新数组,新数组中的元素由元素组元素计算得到。

filter

 arr.filter((item, index) => {
    console.log(item);
  });

注意:filter也会返回一个新数组,新数组长度<=原数组长度,新数组中元素由原数组中筛选得到。

以上是我能想到的所有方法,如果还有其他方法,希望提醒!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • es6-开篇

    相应的,后边推出的ES7、8、9、10等都依次是上一版本发出后一年的新迭代版本。不过很多仍是提案,并不被浏览器支持。

    xing.org1^
  • springboot logback(log4j) elk 非集群

    好长时间没有写过blog了。抽时间把很久之前集成的一个简易的elk升级了下 本教程使用的软件如下: springboot 2.* jdk8 elk 6.2.4(...

    jasonlu
  • 关于微信公众号贴代码的方法

    微信公众号码上贴代码一直一来都是个头疼的问题。吐槽一句:要是后台编辑器支持markdown就好了。

    短短的路走走停停
  • js 超过 java 成为最受欢迎的语言

    HackerRank公司于近日发布了2019年度开发者技能报告,该报告的调查对象是7.1万名来自一百多个国家的软件开发者。现在每一个产业都需要软件开发者,因此对...

    猿哥
  • 5 个Python高级应用,你确定知道?

    Python 函数通常使用 def a_function_name() 样式来定义,但对于 lambda 函数,我们根本没为它命名。这是因为 lambda 函数...

    昱良
  • Java 并没有死!

    我是一个从事Java / Scala / Groovy工作的家伙,这不是一个秘密。有些人,特别是年轻人,在听到这话时就会冲我翻白眼。

    纯洁的微笑
  • Python爬虫开发的3大难题,别上了贼船才发现,水有多深

    写爬虫,是一个非常考验综合实力的活儿。有时候,你轻而易举地就抓取到了想要的数据;有时候,你费尽心思却毫无所获。

    一墨编程学习
  • Flume原理分析与使用案例

      flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单...

    小勇DW3
  • CanalSharp.AspNetCore v0.0.4-支持输出到MongoDB

      CanalSharp.AspNetCore是一个基于CanalSharp的适用于ASP.NET Core的一个后台任务组件,它可以随着ASP.NET Cor...

    Edison Zhou
  • python测试开发django-57.xadmin选项二级联动

    当我们选择项目分类的时候,一个项目下关联多个模块,同时有这两个选项框的时候,需要实现选中一个项目,模块里面自动删除出该项目下的模块,如下图这种

    上海-悠悠

扫码关注云+社区

领取腾讯云代金券