js遍历数组和数组对象的方法

  1. 遍历数组
// 数组
        var arr = [0,2,4,6,8]
        var arr1=[]
        // ------------------------------------forEach
        console.log("-----------------forEach");
        arr.forEach((item,index,arr)=>{
            console.log(item + 0.5)
            arr1.push(item+0.5)
            // return arr1//forEach没有返回值,return也不能使用
        })
        console.log(arr1);//forEach只能配合数组方法push和unshift使用,形成新数组
        // ------------------------------------map
        console.log("-----------------map");
        var newArr=arr.map((item)=>{
            console.log(item+0.5);
            return item+0.6
        })
        console.log(newArr);
        // ------------------------------------filter
        console.log("-----------------filter");
        var arr3=arr.filter((item,index,arr)=>{
            console.log(item>2);//返回满足的个数的不满足个数的Boolean值
            return item>2
        })
        console.log(arr3);//返回新的对象数组,不改变原数组
        // ------------------------------------some
        console.log("-----------------some");
        var bool=arr.some((item,index,arr)=>{
            console.log(item<0);
            return item<0
        })
        console.log(bool);//找到符合条件的值,只要有一个符合,就返回true,不会全部遍历,不做多余的遍历(性能优化首选)
        // ------------------------------------every
        console.log("-----------------every");
        var all=arr.every((item,index,arr)=>{
            console.log(item<10);
            return item<7
        })
        console.log(all);//(对每个元素执行callback)检查每一项是否符合条件,全部符合没有返回false就返回true,找到一项不满足返回false就返回false
        // ------------------------------------find
        console.log("-----------------find");
        var ones=arr.find((item,index,arr)=>{
            console.log(item>5);
            return item>5
        })
        console.log(ones);//和some类似,但是 是返回"值类型",返回第一个符合条件的对象
        // ------------------------------------findIndex
        console.log("-----------------findIndex");
        var i=arr.findIndex((item,index,arr)=>{
            console.log(item>5);
            return item>1
        })
        console.log(i);//返回第一个符合条件的索引号
        
        // ------------------------------------
        console.log("-----------------");
  1. 遍历数组对象
// 数组对象
    var user = [{id:1,userName:"张三"},{id:2,userName:""},{id:3,userName:""}]
    // ------------------------------------forEach
    console.log("-----------------forEach");
    var user1=[]
    user.forEach((item,index,user) => {
      console.log(item.id+1);
      user1.push(item.id+1)
    })
    console.log(user1);
    // ------------------------------------map
    console.log("-----------------map");
    var user2=user.map((item,index,user) => {
      // console.log(item.id+1);
      // return item.id+1
      return item.userName.length>1? "222":"王五"//字符长度缺少或是不够,返回或修改默认值,
    })
    console.log(user2);
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值