我正在寻找一种高效的方法来从数组中删除和存储元素。我正在尝试创建一个对象池以减少垃圾回收调用。
与
是否有一种方法可以在不创建新数组的情况下提取和存储特定索引的元素?
与
.pop()
和 .unshift()
从数组中移除元素并返回该元素的值类似,我希望能够删除特定索引处的元素,同时将其值存储在变量中,并且不创建不必要的数组/对象。
.splice()
可以很好地删除特定索引处的元素,并将该值存储在数组中。我可以访问该值,但函数本身会创建新数组,这最终将触发垃圾回收器。
.slice()
也有相同的问题,它会创建新的数组。是否有一种方法可以在不创建新数组的情况下提取和存储特定索引的元素?
Array.prototype.splice
会返回一个新数组(被移除元素的数组)。这将在后面触发垃圾回收。OP正在寻找避免这种情况的方法。 - Some Guy