我看网上的资料说,v8 实现隐藏类有一个假设,对象的行状是固定的。
动态添加属性会创建新的隐藏类,为什么我在 chrome memory 中看到现象是这两种写法都会创建三个隐藏类(back_pointer 指向上一个隐藏类),这是为什么?
以我的理解,代码一,应该是创建三个隐藏类,代码二应该只有一个隐藏类
下面是代码
代码一:
const foo = {}
foo.name = "a"
foo.type = "b"
对应隐藏类图片:

代码二:
const foo2 = {
name: "a",
type: "b",
}
对应隐藏类图片:
