对象的遍历方式汇总

in方式

遍历了对象中的键
可以访问到原型链上的属性和方法的键
例子如下:

        object= {
            name: '张晓军',
            sex: '男',
            eat(){
                 console.log(name+'开始吃饭')
            }
        }
        for(var i in object){
            console.log(i)
        }
       console.log(Object.keys(object))

Object.keys(object)

也是访问object 里的键,返回的是一个存储了所有键的数组,他不会访问原型链上的数组。然后可以使用数组的遍历方式来访问所有的键


object= {
            name: '张晓军',
            sex: '男',
            eat(){
                 console.log(name+'开始吃饭')
            }
        }
        Object.keys(object).forEach(function(val,index,arr){
            console.log(val,index,arr)
        })


Object.values(object)

他和Object.keys 差不多,差别是它返回的是值组成的数组


object= {
            name: '张晓军',
            sex: '男',
            eat(){
                 console.log(name+'开始吃饭')
            }
        }
        Object.values(object).forEach(function(val,index,arr){
            console.log(val,index,arr)
        })

Reflext.ownkeys() // Object.entries(object)

返回值是返回对象的键值对

也不会访问到原型链上面去


object= {
            name: '张晓军',
            sex: '男',
            eat(){
                 console.log(name+'开始吃饭')
            }
        }
        Object.entries(object).forEach(function(val,index,arr){
            console.log(val,index,arr)
        })


Object.getOwnPropertyNames(object)

和keys 一样 也是返回一个键的数组,不一样的地方是会返回一个不可枚举数
例子



object= {
            name: '张晓军',
            sex: '男',
            eat(){
                 console.log(name+'开始吃饭')
            }
        }
        Object.getOwnPropertyNames(object).forEach(function(val,index,arr){
            console.log(val,index,arr)
        })

图片总结

在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值