你可以使用累加器aka reduce
。
['a','b','c'].reduce(function(result, item, index, array) { result[index] = item; //a, b, c return result; }, {}) //watch out the empty {}, which is passed as "result"
传递空对象{}作为起点; 然后逐渐“增加”该对象。 {"0": "a", "1": "b", "2": "c"} 在迭代结束时, result将为{"0": "a", "1": "b", "2": "c"}
如果您的数组是一组键值对对象:
[{ a: 1},{ b: 2},{ c: 3}].reduce(function(result, item) { var key = Object.keys(item)[0]; //first property: a, b, c result[key] = item[key]; return result; }, {});
为了完整起见, reduceRight
允许您以相反的顺序迭代数组:
[{ a: 1},{ b: 2},{ c: 3}]
您的累加器可以是任何类型的特定用途。 : 例如,为了在数组中交换对象的键和值,传递[]
[{ a: 1},{ b: 2},{ c: 3}].reduce(function(result, item, index) { var key = Object.keys(item)[0]; //first property: a, b, c var value = item[key]; var obj = {}; obj[value] = key; result.push(obj); return result; }, []); //an empty array[{1: "a"}, {2: "b"}, {3: "c"}]
将产生:[{1: "a"}, {2: "b"}, {3: "c"}]
今天的文章将数组转换为对象_将数组对象转换为json对象分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/49147.html