Javascript 如何将数组转换为映射?

Javascript 如何将数组转换为映射?,javascript,Javascript,我的服务的一个可能输出如下 [{ "key": 1, "val": 0 }, { "key": 2, "val": 0 }] 是否有一个函数可以将其转换为下面的对象 { "1":0, "2":0 } 我的目的是能够以映射的形式读取对象值,例如o[1],即:如果o[1]==0{…您可以迭代并使用该值分配所需的属性 var数组=[{key:1,val:0},{key:2,val:0}], 对象={}; array.foreacha函数{ 对象[a

我的服务的一个可能输出如下

[{
    "key": 1,
    "val": 0
}, {
    "key": 2,
    "val": 0
}]
是否有一个函数可以将其转换为下面的对象

{
    "1":0,
    "2":0
}

我的目的是能够以映射的形式读取对象值,例如o[1],即:如果o[1]==0{…

您可以迭代并使用该值分配所需的属性

var数组=[{key:1,val:0},{key:2,val:0}], 对象={}; array.foreacha函数{ 对象[a.key]=a.val; };
document.write;您可以使用进行迭代,并使用值分配所需的属性

var数组=[{key:1,val:0},{key:2,val:0}], 对象={}; array.foreacha函数{ 对象[a.key]=a.val; }; document.write;您可以使用

var data=[{key:1,val:0},{key:2,val:0}]; var result=data.reduceobj,e=>{ obj[e.key]=e.val; 返回obj; }, {}; console.logresult您可以使用

var data=[{key:1,val:0},{key:2,val:0}]; var result=data.reduceobj,e=>{ obj[e.key]=e.val; 返回obj; }, {};
logresult您可以在javascript中使用

var o = {};

for (var i = 0; i < json.length; i++) {
    o[json[i].key] = json[i].val;
}

您可以使用javascript和

var o = {};

for (var i = 0; i < json.length; i++) {
    o[json[i].key] = json[i].val;
}

我认为纯Javascript中没有。也许像jQuery这样的库会有类似的功能。不过,您可以用少量代码来完成自己的功能。在纯JS中:


我认为纯Javascript中没有。也许像jQuery这样的库会有类似的功能。不过,您可以用少量代码来完成自己的功能。在纯JS中:


请在问新问题之前使用搜索。谢谢通知。可能我没有使用正确的关键字进行搜索。请在问新问题之前使用搜索。谢谢通知。可能我没有使用正确的关键字进行搜索。