myfn.b();//0 这个输出结果有点不明白。
function fn() {
this.a = 0;
this.b = function() {
alert(this.a)
}
}
fn.prototype = {
b: function() {
this.a = 20;
alert(this.a);
},
c: function() {
this.a = 30;
alert(this.a);
}
}
var myfn = new fn();
myfn.b();//0
myfn.c();//30
这是因为实例首先会调用实例方法,在原型链上的b方法没有被调用而导致的。