一、ForEach 遍历

三、数组的遍历 - 图1

  1. var arr = [2,3,4,5];
  2. // forEach
  3. /*
  4. 1.对数组执行遍历
  5. */
  6. arr.forEach((item,index)=>{
  7. console.log(item+"--"+index)
  8. item+=2;
  9. })

二、Of 遍历

三、数组的遍历 - 图2

  1. var arr = [1, 2, 3];
  2. for (var i of arr) {
  3. console.log(i)
  4. }

三、For-in遍历

@{EDIVM~UW5BY5J{45~_@DL.png

  1. var arr = [
  2. { name: "HTML", value: "12px" },
  3. { name: "CSS", value: "13px" },
  4. { name: "JavaScript", value: "11px" }
  5. ]
  6. var res=[];
  7. for(var key in arr){
  8. arr[key].value=parseInt(arr[key].value)*2;
  9. res.push(arr[key]);
  10. }
  11. console.log(res)

四、Map 遍历

4-1、Map

可以改变数组的每一项,变成一个新数组

 var arr = ["a","b","c","d"]
 var b= arr.map(item=>{
            return item+"1"
 })
console.log(b); //a1,b1,c1,d1

4-2、如果数组的每一项是基础(简单类型),执行map不会改变数组原来的结构

var arr=[12,13,14,15,16]
        // 如果数组的每一项是基础(简单类型),执行map不会改变数组原来的结构
        var res=arr.map(item=>{
            return item*3;
        })
        console.log(arr)
        console.log(res)

4-3、数组的每一项是复杂类型{object},那么执行map方法会改变原来的数据结构

// 数组的每一项是复杂类型{object},那么执行map方法会改变原来的数据结构
        var arrs = [
            { name: "HTML", value: "12px",age:18 },
            { name: "CSS", value: "13px",age:16},
            { name: "JavaScript", value: "11px",age:20 }
        ]
        var ress=arrs.map(item=>{
            return item.value=0;
        })
        console.log(arrs)
        console.log(ress)

4-4、练习

@{EDIVM~UW5BY5J{45~_@DL.png

var arr = [
            { name: "HTML", value: "12px" },
            { name: "CSS", value: "13px" },
            { name: "JavaScript", value: "11px" }
        ]
        var res = arr.map(item => {
            return item["value"]=parseInt(item["value"])*2
        })
        console.log(arr)

五、Some 方法

5-1、只要数组中有一项满足条件,就输出true

var arr = [1,2,3,4,5]

var res = arr.some(item =>{
  return item>3
})
console.log(res); // true

六、Every 方法

6-1、 数组中的每一项满足条件,才输出true

var arr = [1,2,3,4,5]

var str = arr.every(item => item >2)
console.log(str);  //false

七、findIndex

输出对应值的下标值

var arr = [1,2,3,2];
       var index=arr.findIndex(item=>{
           return item==2
       })
       console.log(index)  //输出第一个为 2 的下标值

八、Filter

输出满足条件的值 (筛选,过滤)

var arr = [1,2,3,2];
var res=arr.filter(item=>item>2)
        res.push(arr[i])
        console.log(res) //输出大于 2 的值

九、Find

找到一个就返回匹配的元素,没找到就返回undefined

var arr = [1, 2, 3, 4, 5, 6]
var newArr = arr.find(val => {
  return val > 2
})
console.log(newArr) // 3