JavaScript备忘录-原型

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() {}

  

  

原文地址:https://www.cnblogs.com/fengchengjushi/p/4439620.html