gpt4 book ai didi

Javascript GC 应用现有对象

转载 作者:行者123 更新时间:2023-12-03 03:51:57 28 4
gpt4 key购买 nike

假设我们有一个对象池(也称为数组)。然后我们Constructor.apply(obj,arguments)。

    var obj = objectPool[nextAvailableIndex];
obj.index = nextAvailableIndex;
nextAvailableIndex += 1;
Constructor.apply(obj, arguments);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

这对现有的 Obj 有何作用?内存是否被重用?这有助于避免GC吗?它本质上不是和新的一样还是相似但不同?

最佳答案

假设我们考虑这样的代码片段:



函数构造函数() {
this.prop = "some_value";
}
var 对象池 = [{}, {}, {}];
var 下一个可用索引 = 0;
函数调用者() {
var obj = objectPool[nextAvailableIndex];
obj.index = nextAvailableIndex;
下一个可用索引 += 1;
构造函数.apply(obj, 参数)
}

在这种情况下,当调用者被调用时,每次都会创建一个名为“obj”的新局部变量,但在执行调用者之后,该变量将被释放。

就是这样。

关于Javascript GC 应用现有对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45123344/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com