Javascript 从数组值创建对象数组

Javascript 从数组值创建对象数组,javascript,arrays,Javascript,Arrays,我有一个数组 ["7", "-1", "1", "2", "3", "4", "5", "6", "-3"] 我想用数组创建一个对象数组,如下所示: { “区域”:[{ “标签”:“, “值”:“7” }, { “标签”:“, “值”:“-1” } ] } 如何实现这一点?假设数组位于变量arr中。 您可以使用.map()创建新结构 var arr=[“7”、“-1”、“1”、“2”、“3”、“4”、“5”、“6”、“-3”]; var结果={ 地区:arr.map(值=>({ 标签:“”

我有一个数组

["7", "-1", "1", "2", "3", "4", "5", "6", "-3"]
我想用数组创建一个对象数组,如下所示:

{
“区域”:[{
“标签”:“,
“值”:“7”
},
{
“标签”:“,
“值”:“-1”
}
]
}

如何实现这一点?

假设数组位于变量
arr
中。 您可以使用
.map()
创建新结构

var arr=[“7”、“-1”、“1”、“2”、“3”、“4”、“5”、“6”、“-3”];
var结果={
地区:arr.map(值=>({
标签:“”,
价值
}))
};
控制台日志(结果)您可以使用数组的。此函数的参数是另一个函数,它将接收每个项的值和键。您可以返回任意结构的对象,从而将每个值映射到正确的对象,例如:

[1,2,3].map(function(item) {
    return {"label":"", "value":item};
});
将返回:

[
    {"label":"", "value":1},
    {"label":"", "value":2},
    {"label":"", "value":3}
]

您可以使用映射功能:

{ 
   region: ["7", "-1", "1", "2", "3", "4", "5", "6", "-3"].map(v => ( 
   {label:"", value:v}))
}
  • 您可以创建
    转换器
  • 创建一个使用Converter实例映射数组的函数
这样您的代码就可以重复使用

看看这个代码片段
var数据=[“7”、“-1”、“1”、“2”、“3”、“4”、“5”、“6”、“-3”];
变量转换器=函数(){
this.convert=(n)=>({“标签”:“”“值”:n});
};
var processArray=(数组,转换器)=>{
返回{region:array.map((n)=>converter.convert(n))};
};
log(processArray(data,newconverter())
。作为控制台包装器{
最大高度:100%!重要

}
而不是
item
您可以调用它
value
并在返回对象时使用key/value快捷方式,如:
arr.map(value=>({label:'',value}))}