this.f.call(this)
和
this.f()
效果上完全没有区别。。
f.prototype中使用this是其原型对象
例子.
<script type="text/javascript">
var f = function () {};
f.prototype.name = "原型";
f.name = "f";
var o = new f;
alert(o.name);
</script>
和
this.f()
效果上完全没有区别。。
f.prototype中使用this是其原型对象
例子.
<script type="text/javascript">
var f = function () {};
f.prototype.name = "原型";
f.name = "f";
var o = new f;
alert(o.name);
</script>
大多情况下应该是一样的,除非这三个能够表示不同的对象(是有这个可能,但一般应该没有人会写这样的用法)在f.prototype中使用this,是引用f而不是其原型对象吧?
看上下文:
function f(){
this.i=1;
}
var t=new f();
f.prototype.i=2
f.prototype.t=function (){alert(this.i)}
t.t(); //1
f.prototype.t(); //2