[英]JS- How to convert an array with key and value pairs to an object?
var arr = [];
arr['k1'] = 100;
console.log(arr); //o/p - [k1: 100]
arr.length; //o/p - 0
window.copy(arr); //copies: []
我想将这个类似数组的 object 转换为适当的对象,即
arr = { k1: 100}
所以做window.copy(arr)应该复制{k1:100}
注意 - 我需要这样做,因为 Node.js 快递服务器返回空的 arrays 以响应这种情况。
您可以使用 object 扩展语法将所有自己的可枚举属性从原始 object 复制到新的 object:
const arr = []; arr['k1'] = 100; const obj = {...arr }; console.log(obj);
即使arr
最初是一个数组,而不是普通的 object,这也有效,因为k1
属性直接存在于数组上。
(但理想情况下,永远不应该有代码分配给数组的任意属性——最好在这种情况下重构它以使用 object 开始)
var array = [] array["k1"] = 100; var newObject = Object.assign({},array); console.log(newObject);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.