循环数组的六种方式 for in, for of, for, forEach, map, filter

其中for in, for of, for 能直接使用break, continue中断循环

forEach, map, filter 不能使用break continue中断循环,而是使用 return flase,try ctach 抛出异常 来中断循环

tip:函数作为参数的循环,直接拿数组的值!!

1.for in 可以使用break continue

let list = [{name:'cookie'},{age: 18}
]// for in 可以使用break continue
for(let i in list) {console.log(i); // 0 1console.log(list[i]); // {name:'cookie'}, {age: 18}if(list[i].name == 'cookie') {break}console.log(list[i]);  //没有值输出   break 满足条件,直接退出循环if(list[i].name == 'cookie') {continue}console.log(list[i]); // {age: 18}
}

2.for of 能使用break continue

// for of 能使用break continue
for (const i of list) {console.log(i); // {name:'cookie'}, {age: 18}if(i.name == 'cookie') {break }console.log(i); //没有值输出   break 满足条件,直接退出循环if(i.name == 'cookie') {continue // 中断此次循环 但是不会跳出循环}console.log(i); // {age: 18}
}

3.for 可以使用break continue

// for 可以使用break continue
for (let i = 0; i < list.length; i++) {console.log(i); // 0 1console.log(list[i]) // {name:'cookie'}, {age: 18}if(list[i].name == 'cookie') {break}console.log(list[i]); //没有值输出   break 满足条件,直接退出循环if(list[i].name == 'cookie') {continue}console.log(list[i]); // {age: 18}
} 

4. forEach不能使用break continue, 我们使用return 中止此次循环,try ctach 抛出异常 来结束整个循环

// forEach不能使用break continue, 我们使用return 中止此次循环,try ctach 抛出异常 来结束整个循环
list.forEach((i,index) => {console.log(i); // {name:'cookie'}, {age: 18}console.log(index); // 0 1if(list[i].name == 'cookie') {break  // forEach不能使用break  Uncaught SyntaxError: Illegal break statement }console.log(list[i]); if(list[i].name == 'cookie') {continue //  forEach不能使用continue Uncaught SyntaxError: Illegal continue statement: no surrounding iteration statement}console.log(list[i]); if(i.name == 'cookie') {return false // 中断此次循环 但是不会跳出循环}console.log(i); // {age: 18}
});try{let list = [{name:'cookie'},{age: 18}]list.forEach(i => {if(i.name == 'cookie') {throw Error('跳出循环')}console.log(i); });
}catch(e) {console.log(e);
}

5.filter 不能使用break continue, 我们使用return 中止此次循环,try ctach 抛出异常 来结束整个循环

// filter 不能使用break continue, 我们使用return 中止此次循环,try ctach 抛出异常 来结束整个循环
list.filter((i,index)=>{console.log(i); // {name:'cookie'}, {age: 18}console.log(index);// 0 1if(i.name == 'cookie') {// break // forEach不能使用break  Uncaught SyntaxError: Illegal break statement continue  // forEach不能使用continue Uncaught SyntaxError: Illegal continue statement: no surrounding iteration statement}console.log(i);
})try{let list = [{name:'cookie'},{age: 18}]list.filter(i => {if(i.name == 'cookie') {throw Error('跳出循环')}console.log(i); });
}catch(e) {console.log(e);
}

6.map 不能使用break continue, 我们使用return 中止此次循环,try ctach 抛出异常 来结束整个循环

// map 不能使用break continue, 我们使用return 中止此次循环,try ctach 抛出异常 来结束整个循环
list.map((i,index)=>{console.log(i); // {name:'cookie'}, {age: 18}console.log(index); // 0 1if(i.name == 'cookie') {// break // forEach不能使用break  Uncaught SyntaxError: Illegal break statement continue  // forEach不能使用continue Uncaught SyntaxError: Illegal continue statement: no surrounding iteration statement}console.log(i); //没有值输出   break 满足条件,直接退出循环if(i.name == 'cookie') {return false // 中断此次循环 但是不会跳出循环}console.log(i); // {age: 18}
})try{let list = [{name:'cookie'},{age: 18}]list.map(i => {if(i.name == 'cookie') {throw Error('跳出循环')}console.log(i); });
}catch(e) {console.log(e);
}

javascript 循环数组的六种方式相关推荐

  1. JavaScript拷贝数组的实现方式

    JavaScript中我们经常会遇到拷贝数组的场景,但是都有哪些方式能够来实现呢,我们不妨来梳理一下. 1.扩展运算符(浅拷贝) 自从ES6出现以来,这已经成为最流行的方法.它是一个很简单的语法,但是 ...

  2. Javascript遍历数组的各种方式

    初学者做一个小笔记,如有遗漏欢迎各位大佬补充,理性讨论不要yygq,谢谢 var arr = [1, 2, 3, 4, 4, 4, 4];/* 1.for循环参数:遍历出来的每个都是item即每一项返 ...

  3. JavaScript中数组的创建方式及数组常用方法

    数组的属性: length: 1).告诉我们数组的长度:数组名.length 2).通过该属性可以改变数组的长度 数组的常用方法: 1)unshift:在数组的头部添加元素,返回值返回的是新数组的长度 ...

  4. Java数组去重的多种方法,[Java教程]JavaScript常见的五种数组去重的方式

    [Java教程]JavaScript常见的五种数组去重的方式 0 2016-12-14 15:00:17 ▓▓▓▓▓▓ 大致介绍 JavaScript的数组去重问题在许多面试中都会遇到,现在做个总结 ...

  5. js循环数组的方式有哪些

    在 JavaScript 中,循环数组的方式有以下几种: for 循环 for 循环是最常见的一种循环方式,它可以遍历数组中的每一个元素,例如: javascriptCopy codeconst ar ...

  6. JavaScript之数组的循环遍历以及排序

    数组的for循环: 上篇文章说到数组可以通过索引获取到数组中的内容,可以参考JavaScript之数组的基础知识,刚好索引的排序是从0开始的,那么我们就可以通过for循环来循环数组,这种行为我们称为: ...

  7. javascript定义数组的两种方式,获取各个元素的值

    <script type="text/javascript">             //创建数组并赋值             //1声明数组,分配空间,赋值    ...

  8. Javascript循环删除数组中元素的3种方法

    本文主要跟大家分享了关于Javascript循环删除数组中元素的几种方法,分享出来供大家参考学习,下面与微点阅读小编一起来看看详细的介绍: 问题 大家在码代码的过程中,经常会遇到在循环中移除指定元素的 ...

  9. JavaScript数组去重的方式

    数组去重的意思就是去除数组中重复的元素,处理完后数组中所有的元素都是唯一的,本文介绍了在js中数组去重的5种方式,请往下看. 1. 利用Set对象 Set 对象 Set 对象允许你存储任何类型的唯一值 ...

最新文章

  1. BF算法优化-------KMP算法
  2. TCC分布式事务的实现原理
  3. python 判断 图片是否相同
  4. JS的instanceof
  5. git 怎么跟踪空目录
  6. DDD:实体如何处理外部依赖
  7. 姑娘,你为什么要编程?
  8. akka的介绍_Akka笔记–演员介绍
  9. 服务动态选择域名问题
  10. jQuery概述、优点、使用步骤、入口函数、jQuery对象和DOM对象之间的转换、层级选择器、属性选择器、筛选选择器、节点选择器
  11. CentOs基础操作指令(网络配置,RPM包管理)
  12. python2和python3中的unicode
  13. 《Unity3D脚本编程——使用C#语言开发跨平台游戏》通读笔记
  14. java实现最大公约数
  15. 图像学习一:图像的旋转
  16. Balsamiq Mockups 产品原型图绘制工具的破解和使用教程
  17. 微信小程序 java校友录交流系统springboot
  18. 历史笔记记录之 MySQL DBA 面试题目 答疑记
  19. Ubuntu14.04安装calamari
  20. 2021 年高校毕业生就业调查报告发布,本科毕业月平均起薪 5825 元?

热门文章

  1. 解决pc游戏启动报错3005 Error 30005: Create File Failed With 32
  2. 2021年哔哩哔哩Java高级面试题及答案,面试必问!
  3. 两部手机怎样才能把数据都传过来_如何将旧 iPhone 中的全部数据无缝传输到全新设备上?...
  4. 常见的视频营销种类有哪些呢?
  5. Vue生命周期中mounted、created、methods、computed、watched等的区别
  6. 工作中遇到的excel使用技巧-列转行
  7. Linux noVNC 下载安装、配置、运行
  8. 华为交换机配置【本文针对一台开箱后的新华为交换的配置进行介绍】
  9. 严蔚敏《数据结构》——顺序串
  10. ELK收集天融信防火墙日志