V8引擎为了优化对象属性查找效率。引入了隐藏类。
即每当创建对象的时候,就会为他创建一个影藏类,用来记录对象的属性在内存中的位置相对于对象在内存中的位置的偏移量。
相同结构的字面量对象,会共享同一个隐藏类。比如:
const a={x:1,y:2,c:3}
和
const b={x:4,y:5,c:6}
虽然a和b里面属性的值不一样。
但是共享了同一个隐藏类。
不过:
const a={x:1}
a.y=2;
和
const b={x:1,y:2}
没有有共享同一个隐藏类?有没有大神回答一下