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}))}
。