将对象数组内每个对象的键获取到数组中:Javascript

v21*_*103 8 javascript arrays ecmascript-6

我有一个具有以下格式的对象

var obj = [{
  "a": 1
}, {
  "b": 2
}, {
  "c": 3
}];
Run Code Online (Sandbox Code Playgroud)

只想将此对象数组内的每个对象中的键提取到新数组中

像这样的东西: ["a","b","c"]

已尝试以下方法但不起作用:

var obj = [{
  "a": 1
}, {
  "b": 2
}, {
  "c": 3
}];
Run Code Online (Sandbox Code Playgroud)

Ori*_*ori 19

通过扩散到 合并到单个对象Object.assign(),然后获取键:

var obj = [{"a":1},{"b":2},{"c":3}];

const result = Object.keys(Object.assign({}, ...obj));
console.log(result);
Run Code Online (Sandbox Code Playgroud)

或者Array.flatMap()与以下一起使用Object.keys()

var obj = [{"a":1},{"b":2},{"c":3}];

const result = obj.flatMap(Object.keys);
console.log(result);
Run Code Online (Sandbox Code Playgroud)

  • 最喜欢第二个 (4认同)