原型链
在浏览器内部有一个window对象,它本身有用以下图这样的属性(部分)
在创建一个对象的时候
var obj = {};
在执行这个代码的时候,浏览器会加上一句代码
var obj = {
obj.__proto__ = window.Object.prototype;
};
在obj调用toString()方法时,在直接属性里找不到这个方法,就会顺着其属性__proto__(即window.Object.prototype)找这个方法
在JavaScript中,数组也是一个对象,所以数组也能调用window.Object.prototype的方法,那么究竟是怎么实现这个关系呢?
实现方法:window.Array.prototype也有一个原型(window.Array.prototype.__proto__),这个原型指向的是window.Object.prototype,所以就实现了数组可以调用window.Object.prototype的方法。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。