javascript 遍历对象所有属性

二话不说,直接看代码。

方式一:

const config = {
  a: { name: "name", value: 1 },
  b: { name: "name2", value: 2 },
};

for (const name of Object.getOwnPropertyNames(config)) {
  const property = config[name];
  // 过滤方法和_开头的私有属性
  if (property instanceof Function || name.indexOf("_") >= 0) {
    continue;
  }
  console.log(config.constructor.name, name, property.value);
}

输出: Object a 1 Object b 2

方式二:

const config = {
  a: { name: "name", value: 1 },
  b: { name: "name2", value: 2 },
};

for (const index in config) {
  const item = config[index];
  console.log(item);
}

输出: {name: "name", value: 1} {name: "name2", value: 2}