Qub
2017-09-02 09:24
举个例子?
正如图所显示,Object.prototype是所有对象的原型链最末端(在这里还找不到方法或属性就是真的找不到了),而这个末端指向了null。
console.log(typeof null);// object
null是一个对象,是终点。所以null没有原型__proto__了,也不会有任何方法了。
刚刚我去补习了一下这个知识,null的存在是为了访问Object.prototype.__proto__的时候不发生异常,这是它存在的一个原因之一,你没法儿访问(因为是空的),同时也完善了原型链,因为“空”也是一个对象,而原型链上只有对象。
null没有任何属性,事实上如果不刻意创建某个对象继承自NULL的情况下,Object.prototype的原型链在浏览器中是可以看到constructor指向的是function Object()的,而function Object()有__proto__属性,隐式指向function (),而function ()的__proto__属性就是Object.prototype了。
总结,Object.prototype是所有对象的根,而继承自null的对象没有任何东西。
JavaScript深入浅出
281101 学习 · 1020 问题
相似问题