this指向
function aa() {
}
aa.prototype.ff = "ff";
// console.log(aa.prototype);
aa.dd = "dd";
aa.prototype.getName = function (a, b) {
// console.log(this);
this.ee = "ee";
// aa.prototype.ee = "ee";
console.log(3);
return "getName"
};
aa.prototype.constructor = aa;
var foo = new aa();
console.log(foo.dd); // --> undefined 是由於dd沒有在aa的原型鏈上,因此在new之後沒有辦法添加到new生成的方法上
console.log(foo.ee); // -->undefined 是由於此處並無執行getName,this.ee並無加到aa的原型上
console.log(foo.getName());// -->getName
console.log(foo.ee); // -->ee 通過上面getName執行,在執行的過程當中,ee添加到了aa的原型鏈上。
複製代碼