数组遍历

1、arr.forEach 方法允许为数组的每个元素都运行一个函数。forEach,for 或 for..of。

arr.forEach(function(item,index,array) { // ... do something with item});

2、find 和 findIndex

let result = arr.find(function(item,index,array) { 

 // 如果返回 true,则返回 item 并停止迭代 

 // 对于假值(falsy)的情况,则返回 undefined

});

如果它返回 true,则搜索停止,并返回 item。如果没有搜索到,则返回 undefined

arr.findIndex 方法(与 arr.find 方法)基本上是一样的,但它返回找到元素的索引,而不是元素本身。并且在未找到任何内容时返回 -1。

let users = [ {id: 1, name: "John"}, {id: 2, name: "Pete"}, {id: 3, name: "Mary"}];

let user = users.find(item => item.id == 1);

alert(user.name); // John

3、filter 返回所有匹配元素组成的数组

let results = arr.filter(function(item,index,array) { 

 // 如果 true item 被 push 到 results,迭代继续 

 // 如果什么都没找到,则返回空数组

});

let users = [ {id: 1, name: "John"}, {id: 2, name: "Pete"}, {id: 3, name: "Mary"}];

// 返回前两个用户的数组

let someUsers = users.filter(item =>item.id < 3);

console.log(someUsers) // [{id: 1, name: "John"},{id: 2, name: "Pete"}]

4、arr.map 它对数组的每个元素都调用函数,并返回结果数组。let result = arr.map(function(item,index,array) { // 返回新值而不是当前元素})

let arr = [1,2,3]

let newarr = arr.map(item =>item*2)

console.log(newarr) // [2,4,6]

5、arr.some(fn)/arr.every(fn) 

任何/所有结果为 true,则返回 true,否则返回 false。

这两个方法的行为类似于 || 和 && 运算符:如果 fn 返回一个真值,arr.some() 立即返回 true 并停止迭代其余数组项;如果 fn 返回一个假值,arr.every() 立即返回 false 并停止对其余数组项的迭代。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • for     最简单的一种循环遍历方法,也是使用频率最高的一种,可优化 var arr = [1, 2, 3, ...
    无言以越阅读 345评论 0 7
  • 文章主要来源: JS数组遍历方法总结 -- 我是豆子啊 我们用更简洁的语法(比如内置函数)遍历数组,从而消除循环结...
    ShanerChan阅读 368评论 0 0
  • js数组Array对象为我们提供了一些数组遍历的方法,这些方法有各自的作用,也分别适用于不同的场景。 Array对...
    简简_cb67阅读 886评论 0 0
  • ## 数组使用 > 数组合并 ES5的写法 ``` let arr1=[0,1,2]; let arr2=[3,4...
    BoomHe阅读 261评论 0 0
  • 今天感恩节哎,感谢一直在我身边的亲朋好友。感恩相遇!感恩不离不弃。 中午开了第一次的党会,身份的转变要...
    迷月闪星情阅读 10,620评论 0 11