Javascript 输出中数组到对象列表的数组(无额外数组)

Javascript 输出中数组到对象列表的数组(无额外数组),javascript,arrays,javascript-objects,Javascript,Arrays,Javascript Objects,以和为指导,我试图编写一个函数,结果是 获取此数组列表的数组: var list = [['name', 'Sparky'], ['breed', 'lab'], ['age', 4]]; 并将其转化为: { name : 'Sparky' breed : 'lab', age : 4 } 但是,当我运行下面的代码时: var列表=[ ['name','Sparky'], [‘品种’、‘实验室’], [‘年龄’,4] ]; 函数对象(数据){ var keys=data.shi

以和为指导,我试图编写一个函数,结果是 获取此数组列表的数组:

var list = [['name', 'Sparky'], ['breed', 'lab'], ['age', 4]];
并将其转化为:

{
  name : 'Sparky'
  breed : 'lab',
  age : 4
}
但是,当我运行下面的代码时:

var列表=[
['name','Sparky'],
[‘品种’、‘实验室’],
[‘年龄’,4]
];
函数对象(数据){
var keys=data.shift(),
i=0,
k=0,
obj=null,
输出=[];
对于(i=0;ilog(toObjects(data))
您可以使用map函数来实现这一点

var list=[['name'、['Sparky']、['bride'、[lab']、['age',4]];
var newObj=新对象();
列表.forEach(函数(arr){
newObj[arr[0]]=arr[1];
});
log(newObj)
我将使用它来执行转换和参数。看一看,代码非常简单:)

let list=[
['name','Sparky'],
[‘品种’、‘实验室’],
[‘年龄’,4]
];
函数对象(数据){
//reduce遍历“data”数组中的每个元素
//并将其累积到对象中
让initialValue={};
返回数据.reduce((obj,[键,值])=>{
obj[键]=值;
返回obj;
},initialValue);//这可以与`{}连成一行`
}
风险值数据=[
['name','Sparky'],
[‘品种’、‘实验室’],
[‘年龄’,4]
];

console.log(toObjects(list))
然后将
output
定义为
{}
,而不是
obj[..][..]
do
output[..][..]
你不能
list.reduce((acu,curVal)=>{acu[curVal[0]]=curVal[1];return acu;},{})
?我不认为OP正在寻找替代方案。这个问题的目的是将输出作为Object而不是array.Downvote,因为您使用的是
array.map
,而不返回任何内容和赋值。这只是浪费了
Array.map
。如果您只想处理数组,请使用
array.forEach
newObj[arr[0]]=arr[1]
map
数组中使用。map
用于基于当前值映射值。您没有返回
.map
中的任何内容,因此它将返回
未定义的
。您也没有在任何地方保存输出。这是
.forEach
的经典案例。您代表的用户应该知道this@Rajesh我只是想给它起个名字来说明发生了什么。我会把它重新命名为hanks@Rico,这就是我要找的!!谢谢大家的帮助!!谢谢你!