js遍历对象的几种方法

1. 使用 for…in 遍历对象

var obj = {
          
   
      name:小明,
      age:18,
      sex:man
    }
    for(var key in obj) {
          
   
      console.log(key);  // name,age,sex
      console.log(obj[key]); //小明,18,man
    }

2.使用Object.keys(obj)

var obj = {
          
   
      name:小明,
      age:18,
      sex:man
    }
   console.log(Object.keys(obj)) //["name", "age", "sex"]
   打印结果为obj对象的key组成的数组

3.使用Object.values(obj)

var obj = {
          
   
      name: "小明",
      age: 18,
      sex: "man",
    };
    console.log(Object.values(obj)); //["小明", 18, "man"]
    打印结果为obj对象的value组成的数组

4.使用Object.getOwnPropertyNames(obj)

var obj = {
          
   
      name: "小明",
      age: 18,
      sex: "man",
    };
    console.log(Object.getOwnPropertyNames(obj)); //["name", "age", "sex"]
    打印结果为obj对象的key组成的数组
    通过对这个数组做遍历可取得对应的value值,如下:
     Object.getOwnPropertyNames(obj).forEach(key=>{
          
   
      console.log(obj[key]);  //小明,18,man
    })

最后需要注意的是:for in 以及Object.keys和Object.values只能返回这个对象可枚举的属性,而Object.getOwnPropertyNames可以得到该对象的所有属性,包括不可枚举的

经验分享 程序员 微信小程序 职场和发展