应用场景:
当我们通过for循环来循环对象或者数组时,当找到符合条件的数据时,想要跳出这个循环,不在执行循环继续往后面查找。
解决方法1:
for循环里面使用return没有效果,于是,我们回到最初控制for循环的循环条件判断这边,具体代码如下
var arr=[1,2,3,4,5,6,7]; for(var i=0;i<arr.length;i++){ alert("有进来") if(i<5){ alert(i) }else { i=arr.length; } }
解决方法2:
使用ES6的新属性some,对数组的每一项都运行给定的函数,只要执行到符合条件的元素就返回 ture结束循环,否则一直执行,都不满足条件返回 false
function compare(element, index, array) { return element > 10; } [2, 5, 8, 1, 4].some(compare); // false 都没有符合大于10的返回false [12, 5, 8, 1, 4].some(compare); // true 执行第一个元素12时符合条件结束执行返回true