JavaScript 引擎的 Shapes

在 JS 学习阶段,我们会执着于思考如下几种创建对象方式的异同:

const a = {};
const b = new Object();
const c = new f1();
const d = Object.create(null);

站在 JS 引擎优化角度去考虑,JS 引擎更希望我们都通过 const a = {} 这种看似最没有难度的方式创建对象,因为可以共享 Shape。

精读《JS 引擎基础之 Shapes and Inline Caches》

文中图片可能来自网络,侵删

Leave a comment