我刚刚在处理 JavaScript 对象时发现了这个我无法理解的东西。我创建了一个包含少量值的数组,并尝试在 JavaScript 中使用 spread 和 new 将该数组转换为对象,但令我惊讶的是,只有数组中的第一个值被放入了类型为 的对象中。
我不需要后台到底发生了什么
let array = [1970,1,1]
let object = new Object(array)
console.log(object)
输出:
Number {1970}
I was expecting {1970 , 1 , 1} object but actual output is Number {1970}
最佳答案
使用 Object.assign 将数组转换为对象
Object.assign({},[1970,1,1])
或者您可以用数组元素填充对象
let array = [1970,1,1];
var obj = new Object();
Array.prototype.push.apply(obj, array);
console.log(obj);
关于javascript - 将 Array 转换为 Object 时奇怪的数据在 javascript 中丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57058689/