/** * forEach 数组遍历 中途不能跳出 和for遍历最大的区别 * 它的参数是一个回掉函数 * 该回掉函数的参数: * item: 数组的每一项 * index: 下标 */ arr.forEach(function fn(item,index){ // do something })
/** * some和every 参数和forEach一样 * some 遇到一个true 就终止遍历 返回true 否则返回 false * every 遇到一个false 就终止遍历 返回false 否则返回 true * @return {Boolean} */ var flag=arr.some(function(item,index){ // 这里只会遍历到第一项 后面都不会遍历 // 这里我们优化一下上个列子,这里只会遍历前2项 if(index==1){ // do something } return index==1 })
/** * find,findIndex 参数和forEach一样 * find 遇到一个true 就终止遍历 返回满足条件的那一项 否则返回 空对象 * findIndex 遇到一个true 就终止遍历 返回满足条件的那一项的下标 否则-1 * @return */ var index=arr.findIndex(function(item,index){ // 这里只会遍历到满足条件的那一项 后面都不会遍历 return item.name==‘b‘ }) console.log(index) // index: 1 var obj=arr.find(function(item,index){ // 这里只会遍历到满足条件的那一项 后面都不会遍历 return item.name==‘b‘ }) console.log(obj) //{name: "b", age: 12}
/** * includes 判断是=== * 不适合判断数组对象 除非数组中是对象的引用 * 适合String number基本类型数组 * @return {Boolean} */ [1,2,3].includes(‘1‘) // false [1,2,3].includes(1) // true arr.includes({name: ‘a‘,age: 11}) //false
原文:https://www.cnblogs.com/little-oil/p/12134080.html