摘要:前文没怎么理解的方法的童鞋使用时很容易遇到一个问题就是,当你想要跳出这个循环时,发现是不起作用的。这里可用于跳出循环。
前文
没怎么理解JavaScript的forEach方法的童鞋使用forEach时很容易遇到一个问题就是,当你想要跳出这个循环时,发现return、break是不起作用的。下面我们来分析一下原因以及解决方法。
正文首先我们要知道的是forEach方法的机制是对数组的每个有效元素执行一次callback函数,然后return、break等只作用于一个函数,也就造成了无法跳出forEach循环的问题,而是只能跳过当前函数的执行。
解决方案 曲线救国(SegmentFault)通过使用抛出异常的方式可以中止。
function foo(arr ,item){ var BreakException= {}; try { arr.forEach(function(i) { if(i === item) throw BreakException; console.log(i); }); } catch(e) { if (e!==BreakException) throw e; } }Array.some&Array.every
正常的使用环境:如果是测试一个数组里的元素是否符合某条件,且需要返回一个布尔值则应该使用这两个方法。这里可用于跳出循环。
function foo(arr ,item){ arr.some(function(i) { if(i === item) return true; console.log(i); }); }
function foo(arr ,item){ arr.every(function(i) { if(i === item) return false; console.log(i); }); }循规蹈矩
如果你需要这样,使用forEach()方法是错误的,你可以用一个简单的循环作为替代。—— MDN
对于多重for循环,我们跳出循环需要特殊处理一下:
xh: //首先将循环命名 for(var i=0;i<10;i++){ for(var j=0;j<5;j++){ if(i==3 && j==4){ break xh; //跳出循环xh } } }参考
https://segmentfault.com/q/10...
https://developer.mozilla.org...
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/93353.html
摘要:中如何跳出循环结束遍历直接抛结论,下表是中常用的实现循环遍历的方法的跳出结束遍历的办法,经过测试后的总结。遍历中返回才会退出执行,而则需要返回才会退出执行。 JavaScript中如何跳出循环/结束遍历 直接抛结论,下表是JS中常用的实现循环遍历的方法的跳出/结束遍历的办法,经过测试后的总结。可能各位大佬还有其他的办法,我在此表示大佬NB。 序号 方法 break continue...
摘要:解决方案用一个临时变量存储结果,当条件成立相同时将结果改为这样虽然能获得正确的返回值,但却无法阻止的循环想来应该是用在历遍数组元素来做一些操作,像这样的应该用循环比较好一些 在写一个比较数组对象中是否存在一个对象,存在返回true,失败返回false.在return时,发现并没有退出方法,自己测试了一下. 首先先写一个数组对象,然后用angularjs的forEach方法循环比较,当存...
摘要:利用捕获错误,在里满足条件时抛出错误满足条件抛出错误,立即跳出循环语句允许我们创建自定义错误。直接是捕获不到的。 //利用 try catch 捕获错误,在forEach里满足条件时抛出错误 try{ arr.forEach(item => { if(true){ //满足条件抛出错误,立即跳出循环 //throw 语句允许我们创建自定...
摘要:是中遍历数组的方法,大部分人常用循环来遍历数组,现在我们来看一下的用法。兼容性和的类型都有的函数。 forEach是javascript中遍历数组的方法,大部分人常用for()循环来遍历数组,现在我们来看一下forEach的用法。 兼容性 Firefox 和Chrome 的Array 类型都有forEach的函数。使用如下: var arryAll = []; arryAll...
摘要:和循环遍历器意义为四种数据集合,提供统一的接口机制来处理所有不同的数据结构。调用函数返回一个遍历器对象,代表函数的内部指针。以后,每次调用遍历器对象的方法,就会返回一个有着和两个属性的对象。 Iterator 和 for...of 循环 Iterator(遍历器)意义 为Array、Object、Map、Set四种数据集合,提供统一的接口机制来处理所有不同的数据结构 。 任何数据结构,...
阅读 983·2021-11-18 13:23
阅读 686·2021-11-08 13:16
阅读 820·2021-10-11 10:58
阅读 3474·2021-09-22 15:26
阅读 1680·2021-09-08 10:42
阅读 1764·2021-09-04 16:45
阅读 1702·2019-08-30 15:54
阅读 2536·2019-08-30 13:45