1.
1.obj.__proto__找到它的原型对象2.数组上的方法都是挂载在原型上(Array.prototype)的var arr=[1,2,3];console.log(Array.prototype)//数组的所有方法console.log(arr.__proto__==Array.prototype)//true
2.原型的构造
var arr=new Array(1,2,3);Array.prototype.sum=function(params){if(Array.isArray(params)){return arr.reduce((a,b)=>a+b);}}console.log(arr.sum(arr));
var obj=[5,8,9,7];Array.prototype.http=function(){console.log("http")}arr.http();
3.原型对象
作用:将对象通用的方法挂载在原型上
function Student(name,age){this.name=name;this.age=age;}Student.prototype.sayName=function(){console.log(this.name)//meng}var s=new Student("meng",18);s.sayName()console.log(s)//Student {name: "meng", age: 18}console.log(Student.prototype)//sayName: ƒ ()constructor: ƒ Student(name,age)__proto__: Object

function Teacher(name,age){this.name=name;this.age=age;}Teacher.prototype.sayAge=function(){console.log(this.age)}var s=new Teacher("tom",35)console.log(s)
