常见遍历数组的一些方法

   //  首先创建三个类型不同的数组
        var arr = [1,2,3,4]
        var objArr = [{id:1,name: '张奥林'},{id:2,name: '张小林'}]
        var secondArr = [[1,2],[3,4],[5,6]]

数组的for循环遍历方法

       for(var i = 0; i < arr.length; i++) {
                console.log(arr[i])
            }
            for(var i = 0; i<objArr.length; i++) {
                console.log(objArr[i])
            }
            for(var i = 0; i < secondArr.length; i++) {
                console.log(secondArr[i])
            }

   数组的forEach遍历方法  该方法可以传入三个参数 分别是数组的值 下标  以及数组的内容

        arr.forEach(function (value, index, arr) {
            console.log(value, index, arr)
        })
        objArr.forEach(function (value, index, arr) {
            console.log(value, index, arr)
        })
        secondArr.forEach(function (value, index, arr) {
            console.log(value, index, arr)
        })

数组的map()方法  返回一个新数组不会改变原来的数组  

        var a = arr.map(function (value, index, arr) {
            return value * value;
        })
        console.log(a) // [1,4,9,16]
        var b = secondArr.map(function (value, index, arr) {
            return value
        })
        console.log(b)

for in 遍历对象方法 可以访问到数组原型中的属性 返回的 i 为数组的下标

  Array.prototype.name = 'laila'
        for(var i in arr){
            console.log(i,arr[i])
        }

 for of遍历数组 不会访问到数组原型上的属性 且返回的item为数组对应的值  

        for(var item of arr){
            console.log(item)
        }
        for(var item of objArr){
            console.log(item)
        }

  filter  数组的过滤 返回新的符合条件的数组

        //  过滤掉所有字符串类型的值
        var arr = [1, 2, 3, 4,"a","b","c","d","e","f"]
        var newObja = arr.filter(function(value,index,arr){
            console.log(value.constructor)
            return value.constructor === Number
           
        })
        console.log(newObja)

   every方法遍历每一项 每一项的值都符合条件则返回true  否则返回false

   var isEvery = arr.every(function(value){
            // console.log(value)
            return value > 2
        })
        console.log(isEvery) // false

some()方法 只要有一项符合条件则返回true

  var isEvery = arr.some(function (value) {
            return value > 2
        })
        console.log(isEvery)

reduce() 方法第二个参数是第一个参数的初始值  对结果有影响

        var sum = arr.reduce(function(prev,cur){
            return cur + prev
        })
        console.log(sum)

find() 查找到数组当中符合条件的某一项 返回的是符合条件的某一项, 如果数组中有多项符合条件,查询到符合条件的值之后就会跳出 ,并且返回最后查找到的值

 var abc = arr.find(function(val){
            return val >2
        })
        console.log(abc)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值