在 JavaScript 中复制冻结数组有什么缺点吗?

Any downsides to copying frozen array in JavaScript?

在JavaScript中,数组是对象,对象可以被冻结,所以我想这可以做到?

const frozenArr = Object.freeze([1, 2, 3, 4, 5])

因此

//frozenArr.push(6) //does not work, "Cannot add property 5, object is not extensible..."

但是,如果我从冻结的数组创建一个新数组

const anotherArr = Array.from(frozenArr)

然后

anotherArr.push(6) // works

我的问题是,复制冻结数组有什么缺点吗?它的原型是哪个,它是否从中继承了任何不需要的属性?提前致谢!

只有downside?可能是你在克隆原来的object/array从而使内存翻倍!否则,你肯定可以复制对象,但它无论如何都与第一个对象无关。任何更新都不会影响原来的 array/object.