为什么这个绑定不能与javascript中的类一起工作
此函数不显示任何内容,如果我将函数移出类,它将工作。为什么这个绑定不能与javascript中的类一起工作,javascript,Javascript,此函数不显示任何内容,如果我将函数移出类,它将工作。bind()不会更改原始函数上的此绑定。相反,它会返回一个新函数。您需要将它赋给一个变量 但是,您的代码与此没有任何关联,代码将记录“hh”此是什么。记录此的属性,以检查此是什么 abc类{ 构造函数(){ this.foo=“某物” } f(){ console.log(this.foo) } }; 设obj=newabc() obj.f()/“某物” 让newFunc=obj.f.bind({foo:“changed”}); newFun
bind()
不会更改原始函数上的此
绑定。相反,它会返回一个新函数。您需要将它赋给一个变量
但是,您的代码与此
没有任何关联,代码将记录“hh”
此是什么。记录此
的属性,以检查此是什么
abc类{
构造函数(){
this.foo=“某物”
}
f(){
console.log(this.foo)
}
};
设obj=newabc()
obj.f()/“某物”
让newFunc=obj.f.bind({foo:“changed”});
newFunc()//“已更改”
我想这是可行的
class abc{
f(){
console.log("hh")
}
};
let obj = new abc()
obj.f.bind(this)
obj.f.bind(this)
返回一个新函数;您的代码对该值没有任何作用。请添加this
和所需结果。obj.f.bind(this)
您希望它做什么?
class abc{
f(){
document.write("hh")
}
};
let obj = new abc()
obj.f()