第二次绑定
重要性: 5
我们可以通过额外的绑定来改变this
吗?
输出结果会是什么?
function f() {
alert(this.name);
}
f = f.bind( {name: "John"} ).bind( {name: "Ann" } );
f();
答案: John。
function f() {
alert(this.name);
}
f = f.bind( {name: "John"} ).bind( {name: "Pete"} );
f(); // John
由f.bind(...)
返回的奇特的绑定函数对象只在创建时记住上下文(以及提供的参数)。
函数不能被重新绑定。