我是 JavaScript 新手,我正在尝试将数组转换为键值对。
var arrayA = [{"name":"orange", "value":"1"}, {"name":"banana", "value":"2"}...]
所以最终结果看起来像
var arrayB = {orange:1, banana:2}
我觉得我可能必须先在循环中使用循环来在
,
上进行分割,然后再使用另一个循环在 :
上进行分割,但这看起来很混乱。
谢谢。
var arrayA = [{"name":"orange", "value":"1"}, {"name":"banana", "value":"2"}];
var arr={};
for(var i = arrayA.length -1; i>=0; i--){
arr[Object.values(arrayA[i])[0]]=Object.values(arrayA[i])[1];
}
console.log(arr);
明年应该可以用,如果不行,后年检查一下,依此类推。祝你好运。
var arrayA = [{"name":"orange", "value":"1"}, {"name":"banana", "value":"2"}];
var obj = arrayA.reduce(function(acc, obj) {
acc[obj.name] = obj.value;
return acc;
},{});
document.write(JSON.stringify(obj))
var array = [{"name":"orange", "value":"1"}, {"name":"banana", "value":"2"}],
object = {};
array.forEach(function(a) {
object[a.name] = a.value;
});
document.write('<pre>' + JSON.stringify(object, 0, 4) + '</pre>');