Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为对象中的所有键和值添加属性?_Javascript_Arrays_Map Function - Fatal编程技术网

Javascript 如何为对象中的所有键和值添加属性?

Javascript 如何为对象中的所有键和值添加属性?,javascript,arrays,map-function,Javascript,Arrays,Map Function,我有一个Javascript对象: { "Central":73322346.47533998, "East":87801368.39711998, "North":76468694.37534, "South":142687496.66816995, "West":76815749.40554999 } 我想将这个对象映射到一个数组中,如下所示 [ {"name" :"Central ,"size" : 73322346.47533998},

我有一个Javascript对象:

{
    "Central":73322346.47533998,
    "East":87801368.39711998,
    "North":76468694.37534,
    "South":142687496.66816995,
    "West":76815749.40554999
}
我想将这个对象映射到一个数组中,如下所示

[
    {"name" :"Central ,"size" : 73322346.47533998},
    {"name" : "East", "size" : 87801368.39711998},
    {"name": "North","size":76468694.37534},
    {"name": "South","size" :142687496.66816995},
    {"name":"West","size":76815749.40554999}
]
我该怎么办?

像这样做:

obj = {"Central":73322346.47533998,"East":87801368.39711998,"North":76468694.37534,"South":142687496.66816995,"West":76815749.40554999}
out = [];
Object.keys(obj).forEach(function(d){ out.push({name: d, size: obj[d]});})
//out will contain your formatted data

像这样做:

obj = {"Central":73322346.47533998,"East":87801368.39711998,"North":76468694.37534,"South":142687496.66816995,"West":76815749.40554999}
out = [];
Object.keys(obj).forEach(function(d){ out.push({name: d, size: obj[d]});})
//out will contain your formatted data

您可以在对象的
键上循环,以获得预期的对象数组:

var数据={“中部”:73322346.47533998,“东部”:87801368.39711998,“北部”:76468694.37534,“南部”:142687496.66816995,“西部”:76815749.40554999};
var-res=[];
Object.key(数据).forEach((key)=>{
再推({
姓名:key,,
大小:数据[键]
});
});

控制台日志(res)
您可以循环对象的
s以获得预期的对象数组:

var数据={“中部”:73322346.47533998,“东部”:87801368.39711998,“北部”:76468694.37534,“南部”:142687496.66816995,“西部”:76815749.40554999};
var-res=[];
Object.key(数据).forEach((key)=>{
再推({
姓名:key,,
大小:数据[键]
});
});
控制台日志(res)在ES2017中,您可以执行以下操作:

Object.entries(obj.map)([name,size])=>({name,size}))

var obj={
“中央”:73322346.47533998,
“东”:87801368.39711998,
“北”:76468694.37534,
“南”:142687496.66816995,
“西部”:76815749.40554999
}
var res=Object.entries(obj.map)([name,size])=>({name,size}));
控制台日志(res)在ES2017中,您可以执行以下操作:

Object.entries(obj.map)([name,size])=>({name,size}))

var obj={
“中央”:73322346.47533998,
“东”:87801368.39711998,
“北”:76468694.37534,
“南”:142687496.66816995,
“西部”:76815749.40554999
}
var res=Object.entries(obj.map)([name,size])=>({name,size}));

控制台日志(res)执行此操作的简单方法是使用以下命令在输入对象的键上交互:

const输入={
“中央”:73322346.47533998,
“东”:87801368.39711998,
“北”:76468694.37534,
“南”:142687496.66816995,
“西部”:76815749.40554999
};
让输出=[];
for(输入中的常量键)
{
push({“name”:key,“size”:input[key]});
}

控制台日志(输出)执行此操作的简单方法是使用以下命令在输入对象的键上交互:

const输入={
“中央”:73322346.47533998,
“东”:87801368.39711998,
“北”:76468694.37534,
“南”:142687496.66816995,
“西部”:76815749.40554999
};
让输出=[];
for(输入中的常量键)
{
push({“name”:key,“size”:input[key]});
}

控制台日志(输出)发布的问题似乎根本不包含解决问题的方法。StackOverflow希望您能这样做,因为您的尝试有助于我们更好地了解您的需求。请编辑问题以显示您已尝试过的内容,以便说明您在某个问题中遇到的具体问题。有关详细信息,请参阅并采用。还要注意,重复的键名将覆盖以前分配给这些键的值。所需的输出无效。在这种情况下,数组的用途是什么?对象的输出数组具有重复的键名,如
name
size
,这是invalid@CertainPerformance编辑问题以添加大括号以分隔对象。发布的问题似乎根本不包含解决问题的内容。StackOverflow希望您能这样做,因为您的尝试有助于我们更好地了解您的需求。请编辑问题以显示您已尝试过的内容,以便说明您在某个问题中遇到的具体问题。有关详细信息,请参阅并采用。还要注意,重复的键名将覆盖以前分配给这些键的值。所需的输出无效。在这种情况下,数组的用途是什么?对象的输出数组具有重复的键名,如
name
size
,这是invalid@CertainPerformance编辑问题以添加大括号以分隔对象。您可以添加片段以显示正在运行的内容,屏幕截图与某些正在运行的实时代码相比并没有多大帮助。@KoushikChatterjee确信我下次会这么做:)您可以添加一个片段来显示正在运行的内容,屏幕截图与一些正在运行的实时代码相比并没有多大帮助。@KoushikChatterjee确信我下次会这么做:)