分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

js中forEach与for循环小结

发布时间:2023-09-06 02:26责任编辑:胡小海关键词:js

最近在用forEach循环时,想查找某个数组id上个id的值,进行位置颠倒。思路是找到便利数组id,找到相等的便跳出循环。结果发现return false只退出当前循环,并没有跳出forEach循环。于是只能用for循环break做了处理。

upSort () { ?????var upId = -1 ?????// this.tableData.forEach(item => { ?????// ??if (item.id === this.checkId) { ?????// ????return false // 结束不了forEach循环 只是结束本次循环体 ?????// ??} ?????// ??upId = item.id ?????// }) ?????for (let i=0;i<this.tableData.length;i++) { ???????if (this.tableData[i].id === this.checkId) { ?????????break ???????} ???????upId = this.tableData[i].id ???????console.log(‘upId ===‘,upId) ?????} ?????let params = [ ???????{id: this.checkId, sort: this.sort-1}, ???????{id: upId , sort: this.sort} ?????] ?????console.log(‘params===‘,params) ???}

  后来网上看到一种利用异常处理跳出forEach循环的方法

upSort () { ?????var upId = -1 ?????try { ???????this.tableData.forEach(item => { ?????????if (item.id === this.checkId) { ???????????throw new Error(‘return false‘) ?????????} ?????????upId = item.id ???????}) ?????} catch (e) { ???????console.log(e) ?????} ???????????let params = [ ???????{id: this.checkId, sort: this.sort-1}, ???????{id: upId , sort: this.sort} ?????] ?????console.log(‘params===‘,params) ???},

  哎,菜是原罪!

  

js中forEach与for循环小结

原文地址:https://www.cnblogs.com/shichangchun/p/10118910.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved