【发布时间】:2021-10-22 19:15:21
【问题描述】:
假设我有一个这样定义的类:
class Test {
get a() { return 1; }
get b() { return 2; }
get c() { return 3; }
get d() { return 4; }
get e() { return 5; }
get f() { return 6; }
get g() { return 7; }
get h() { return 8; }
}
然后我像这样创建几个实例:
let a = new Test();
let b = new Test();
let c = new Test();
是否为每个实例分配了这些 get 访问器?也就是说,如果我要添加更多的 get 访问器,每个对象的内存使用量会增加,还是只分配一次 get 访问器并在所有实例之间共享?
我尝试使用 Chrome 的堆快照对其进行测试,它似乎无论我添加了多少 get 访问器,对象的内存使用情况都是相同的,但我不确定如果总是这样,或者在什么条件下成立。
我想知道这是因为我正在开发一个与内存分配相关的浏览器游戏。
【问题讨论】:
标签: javascript performance memory v8