1.for … in 循环遍历对象自身的和继承的可枚举属性(循环遍历对象自身的和继承的可枚举属性(不含Symbol属性))
let obj = {
'0': a,
'1': b,
'2': c
}
for (let i in obj) {
console.log(i, obj[i])
}
// 0 a
// 1 b
// 2 c
2.使用Object.keys()遍历 (返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含Symbol属性))
Object.keys(obj).forEach(key => {
console.log(key, obj[key])
})
// 0 a
// 1 b
// 2 c
第二种
Object.keys(obj)
Object.values(obj)
参数:obj: 要返回其枚举自身属性的对象
返回值:一个表示给定对象的所有的可枚举属性的字符串数组
let obj1 = {
id: 1,
name: 'test',
age: 12
}
console.log(Object.keys(obj1)) // ['id', 'name', 'age']
console.log(Object.valuse(obj1)) // [1, 'test', 12]
3.Object.getOwnPropertyNames(obj),返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性)
Object.getOwnPropertyNames(obj).forEach(key => {
console.log(key, obj[key])
})
4.使用Reflect.ownKeys(obj)遍历,返回一个数组,包含对象自身的所有属性,不管属性名是Symbol或字符串,也不管是否可枚举
Reflect.ownKeys(obj).forEach(key => {
console.log(key, obj[key])
})
// 0 a
// 1 b
// 2 c
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。