ES6方向:集中整理ES5到ES6的关于遍历数组的所有方法

let  arr = [2,3,6,8,1,5];
1.1、for循环
for(var i = 0 ; i < arr.length ; i++){
  console.log(arr[i]);
}
1.2、for....in....
for(var index in arr){
        console.log('索引: '+index,"值: "+arr[index]);
      }
执行结果.png
1.3、forEach()
arr.forEach( (item,index) => {
        console.log('索引:'+index,'数据:'+item);
      })
执行结果.png
1.4、map()
      let resArr = arr.map( (item,index) => {
        return item*2
      })
      console.log(resArr)
执行结果.png
1.5、filter()
let resArr = arr.filter( item => item >= 5 )
console.log(resArr)
过滤大于等于5的数据出来.png
1.6、some()

筛选数组中是否有符合条件的数,返回值是boolean布尔值

let isHas = arr.some( item => item == 8)
console.log(isHas);
some判断是否有数据存在.png
1.7、every()
let isAllHas = arr.every( item => item > 5)
console.log(isAllHas);
every判断每个元素是否符合要求.png
1.8、reduce()求和
let result = arr.reduce( (pre,cur,index,arr) => {
     return pre+cur;
},0)
console.log(result);
求和的结果.png

方法源码.png
1.9、indexOf()

判断数组中是否有该元素,不存在则返回-1

let result = arr.indexOf(4);
console.log(result);
indexOf.png
1.10、ES7中的includes()

因为indexOf无法检测NaN,因此在ES7中弥补了该部分

      let arr = [2, 3, 6, 8, 1, 5,NaN,'ref'];
      let a = arr.includes(2);
      let b = arr.includes(NaN);
      let c = arr.includes('ref');
      console.log('a的结果:'+a,'b的结果:'+b,'c的结果:'+c);
各自的结果.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容