第一种: for......inconst obj = {
            id:1,
            name:'zhangsan',
            age:18
}

 for(let key  in obj){
        console.log(key + '---' + obj[key])
  }
输出结果:

输出结果: obj对象的key组成的数组


['id','name','age']

输出结果:obj对象的value组成的数组

['1','zhangsan','18']

 

第二种:

1)、Object.keys(obj)

2)、Object.values(obj)

参数:

obj:要返回其枚举自身属性的对象

返回值:

一个表示给定对象的所有可枚举属性的字符串数组。

const obj = {
    id:1,
    name:'zhangsan',
    age:18
}

 console.log(Object.keys(obj))

console.log(Object.values(obj))

输出结果: obj对象的key组成的数组

['id','name','age']

 

输出结果:obj对象的value组成的数组

['1','zhangsan','18']

 

 

第三种:使用Object.getOwnPropertyNames(obj)

返回一个数组,包含对象自身的所有属性(包含不可枚举属性)
遍历可以获取key和value
const obj = {
            id:1,
            name:'zhangsan',
            age:18
    }
    Object.getOwnPropertyNames(obj).forEach(function(key){
        console.log(key+ '---'+obj[key])
    })
复制代码

输出结果: