object的遍历

2021-02-24  本文已影响0人  肥羊猪

1.for in 循环是最基础的遍历对象的方式,它还会得到对象原型链上的属性

const obj = {
            id:1,
            name:'dadadada',
            age:18
}
 for(let key  in obj){
        console.log(key + '---' + obj[key])
  }
Object.create // 使用对象的 hasOwnProperty() 方法过滤掉原型链上的属性 

2.Object.keys() 是 ES5 新增的一个对象方法,返回对象自身属性名组成的数组,它会自动过滤掉原型链上的属性,可以通过数组的 forEach() 方法来遍历

Object.keys(obj).forEach((key) => {
  console.log(obj[key]) // foo
})
// Object.keys  返回对象key,
let keys= Object.keys(obj)
 console.log(keys) // ["name", "age", "sex"]

3.Object.values(obj)

// Object.values 返回对象value,所组成的数组
    let values= Object.values(obj)
    console.log(values) //["jack", 12, "M"]

4.Object.entries

// Object.entries 返回对象[key,value] 组成的二维数组
    let entries= Object.entries(obj)
    console.log(entries)  // [["name", "jack"],["age", 12],["sex", "M"]]

(不包括不可枚举属性,Symbol属性)
5.Object.getOwnPropertyNames(obj)

Object.getOwnPropertyNames(obj).forEach(function(key){
        console.log(key+ '---'+obj[key])
    })

6.Object.getOwnPropertySymbols()
7.Reflect.ownKeys()

上一篇 下一篇

猜你喜欢

热点阅读