coco

随心。。。随性。。。随行。。。

  博客园  ::  ::  ::  ::  :: 管理
function Person() {
this.name = "fs";

}

Person.prototype.sayHello = function () {
return "hello,fs";
};
var p1 = new Person();
p1.sayHello();

 

p1.sayHello()首先通过p1._proto_向上查找Person.prototype,如图所示:

在Person的prototype中找到了sayHello();如果,美玉偶找到将会继续通过Person.prototype._proto_去Object中查找。没有就抛去异常。

由此可见所有对象的__proto__都指向其构造器的prototype。

另外

   所有构造器/函数的__proto__都指向Function.prototype

function Person() {}
console.log(Person.__proto__ === Function.prototype) // true

  Function.prototype,它是一个空函数(Empty function)

console.log(Function.prototype) //function Empty() {}

  

  

posted on 2015-04-19 18:41  深谷&幽兰  阅读(165)  评论(0编辑  收藏  举报