我有一个很大的对象,里面有很多key-value
对(比如dictionary
)。当发生一些事情时,我想从这个object
中删除key-value
。我知道delete performance issue,并将未使用的键设置为undefined
/null
看起来是一个很好的方法,但我仍然担心GC
。我可以将object
设置为undefined
或null
,但是key (property
)仍然在那里并持有一些memory
。当我delete
key时,它就消失了,所以我猜这意味着GC
会free
这个key的memory
。所以从一个大的key-value
集合object
中找到remove
密钥的真正解决方案对我来说是令人困惑的。也许是一些建议或参考?
示例:
var dic = {};
dic.a = 1234;
dic.b = "hello";
dic.c = "!#$";
delete dic.a; // { b: "hello", c: "!#$" }
dic.b = undefined; // { b: undefined, c: "!#$" }
dic.c = null; // { b: undefined, c: null }
https://stackoverflow.com/questions/43313607
复制相似问题