为了账号安全,请及时绑定邮箱和手机立即绑定

如何在对象数组中分隔每个对象的键和值 - Javascript

如何在对象数组中分隔每个对象的键和值 - Javascript

慕姐4208626 2021-08-20 16:45:10
我有一组具有以下格式的对象var obj = [{  "a": 1}, {  "b": 2}, {  "c": 3}];想要从这个对象数组中的每个对象中分别提取键和值到一个新数组中像这样的东西: [{"key:"a","val:"1"],{"key":"b","val":"2"},{"key": "c","val":"3"]}已尝试以下但它不工作:var obj = [{  "a": 1}, {  "b": 2}, {  "c": 3}];const result = obj.map(value => Object.keys(value)[0]);console.log(result);
查看完整描述

3 回答

?
森栏

TA贡献1810条经验 获得超5个赞

我们必须使用Object.keys财产来实现它。试试下面的代码


var obj = [{

  "a": 1,

}, {

  "b": 2

}, {

  "c": 3

}];


const result = obj.map(value => {

  let [key, val] = Object.entries(value)[0];

  return {key, val}

});


console.log(result)


查看完整回答
反对 回复 2021-08-20
?
茅侃侃

TA贡献1842条经验 获得超21个赞

您可以使用Array.flatMap()withObject.entries()将对象数组转换为条目数组。然后将每个条目映射到一个对象:


const arrayObj = [{ "a": 1 }, { "b": 2 }, { "c": 3 }];


const result = arrayObj

  .flatMap(Object.entries) // convert to an array of entries

  .map(([key, val]) => ({ key, val })); // convert each entry to an object


console.log(result);


查看完整回答
反对 回复 2021-08-20
  • 3 回答
  • 0 关注
  • 244 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信