如何设置函数的原型?

时间:2015-08-21 07:50:34

标签: javascript function prototype

这样的事情,但没有使用__proto__

var o = {
    i :2
}; 

var f1 = function(){
    alert(f1.i);
} 

f1.__proto__ = o; 

o.i = 3; 

f1(); //3

这个问题在这里没有答案:How to set the prototype of a JavaScript object that has already been instantiated?

1 个答案:

答案 0 :(得分:0)

一种方法是使用bind API。所以你的Javascript看起来像这样

var o = {i :2}; 
var f1 = function(){    alert(this.i);    }.bind(o)
o.i = 3; 
f1(); //3