javascript - 将对象数组中的每个对象的键放入数组 : Javascript

标签 javascript arrays ecmascript-6

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

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

只想从这个对象数组中的每个对象中提取键到一个新数组中

是这样的: ["a","b","c"]

已尝试以下但它不工作:

var obj = [{
  "a": 1
}, {
  "b": 2
}, {
  "c": 3
}];
let result = obj.map (({ val }) => val)
console.log(result);

最佳答案

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

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

const result = Object.keys(Object.assign({}, ...obj));
console.log(result);

或者将 Array.flatMap()Object.keys() 一起使用:

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

const result = obj.flatMap(Object.keys);
console.log(result);

关于javascript - 将对象数组中的每个对象的键放入数组 : Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57109438/

相关文章:

javascript - jQuery 触发 DatePicker 更改事件

javascript - 如何高效地搜索 JSON 数组

javascript - 动态向函数添加参数(无限制)

javascript - 让网站的左侧部分随着滚动条自动向下滚动

javascript - 需要类似表格的小部件

javascript - 我们可以在类中定义的 redux Action Creators 上使用 bindActionCreators() 吗?

javascript通过相同的键查找对象并将它们合并

javascript - 两个肥箭相随

javascript - 如何向 Angular2 错误消息添加其他参数

Java作业: using an equals method with an array of objects