您当前的位置:首页 > 网站建设 > javascript
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax |

js中Array.forEach跳出循环的方法实例

51自学网 2022-05-02 21:32:58
  javascript

forEach()方法

语法:array.forEach(callback(currentvalue,index,arr) ,thisValue)

其中

callback为数组中每个元素执行的函数,该函数可接受1-3个参数:

  • currentvalue参数表示数组的当前元素项,必须的参数
  • index参数表示的当前元素下标,可选参数
  • arr参数表示当前元素所属的数组,可选参数

thisValue表示执行回调函数callback()时的this指向。可选参数。当不写时,则默认是指向window全局

示例

    var arr = [1, 3, 5, 13, 2];    var res = arr.forEach(function(item,index) {        console.log(`数组第${index+1}个元素是${item}`);    })    console.log(res);//forEach的返回值为undefined,

运行结果:

js中 Array.forEach如何跳出循环

forEach是不能通过break或者return跳出循环的,一般跳出循环的方式为抛出异常:

 try {   let array = [1, 2, 3, 4]   array.forEach((item, index) => {     if (item === 3) {       throw new Error('end')//报错,就跳出循环     } else {       console.log(item)     }   }) } catch (e) { }

这种写法反而很麻烦。

解决方式:

1.使用every替代:

let array = [1, 2, 3, 4]array.every((item, index) => {  if (item === 3) {    return true  } else {    console.log(item)  }})

2.自己写一个😁

//可跳出循环的数组遍历Array.prototype.loop = function(cbk) {  //判断当前数组是否为空  if (this?.length) {    for (let i = 0; i < this.length; i++) {      let stop = cbk(this[i], i, this)      //判断是否停止循环      if (stop) {        break      }    }  }}let array = [1, 2, 3, 4]array.loop ((item, index) => {  if (item === 3) {    return true  } else {    console.log(item)  }})

总结

到此这篇关于js中Array.forEach跳出循环的文章就介绍到这了,更多相关js中Array.forEach跳出循环内容请搜索wanshiok.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持wanshiok.com!


javascript实现查询商品功能
JavaScript框架设计模式详解
51自学网,即我要自学网,自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1