Object.create(null)的解释
之前看到这个,一点都不理解(太菜了的缘故....)
直到去看了很多解释,貌似懂了一点...我这里记录一下我的最简单理解。
Object.create(null) 在编辑器上试一下,console.log(Object.create(null).__ptoto__)出来,是undefined,什么意思呢?
它的原型是一个undefined,就是说,它已经是最顶级的,再没有原型了。
new Object() 和直接为 { } 它们的原型都是一样的,它们的原型上还有原型,因为继承了Object。
所以以上简单说就是:
let top = Object.create(null) 变量-->顶级原型-->undefined
let test1 = new Object() 和 let test2 = { } 变量-->原型-->顶级原型-->undefined