基本概念
proto
每个JS对象一定对应一个原型对象,并从原型对象继承属性和方法。
对象的__proto__属性的值就是它所对应的原型对象
prototype
不像每个对象都有__proto__属性来标志自己所继承的原型,只有函数才有prototype属性。
示例
var a = "zuckjet";
console.log(a.prototype);
console.log(a.__proto__);
console.log(String.prototype);
var b = [1,2,3];
console.log(b.__proto__);
console.log(Array.prototype);
function test() {}
var c = new test();
console.log(c.__proto__);
console.log(test.prototype);
console.log(test.__proto__);
console.log(Function.prototype);
输出结果如下:
补充
Function本身就是函数,Function.__proto__是标准的内置对象Function.prototype。
Function.prototype.__proto__是标准的内置对象Object.prototype。
Object.prototype.__proto__ === null
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。