所有函数都含有固有属性prototype,构造函数作为函数因此也含有prototype,构造函数的prototype属性中的constructor指向构造函数本身,构造函数new出来的实例对象中没有prototype但有__proto__,实例对象中的__proto__指向其构造函数的prototype。
function A(){} A.prototype.n=1 var b=new A() A.prototype={n:2,m:3}\改变了A的prototype console.log(b.__proto__==A.prototype)// 结果false var b=new A() console.log(b.__proto__==A.prototype)//true