gpt4 book ai didi

JavaScript 绑定(bind)语法

转载 作者:行者123 更新时间:2023-12-02 14:51:16 25 4
gpt4 key购买 nike

我正在阅读我前同事编写的一些 Node 代码。我不是一个熟练的 JavaScript 程序员,但我看到很多代码在我看来就像语法糖。例如:

_.bind(this._work, this),

这与调用不完全相同

this._work

最佳答案

这将创建函数的副本,并将 this 绑定(bind)到正确的对象。当您传递函数时这会很有用。

function log(msg) {
document.querySelector('pre').innerText += msg + '\n';
}

var _ = {
bind: function(f, self) {
// Simplified bind implementation
return f.bind(self);
}
};

function runFunc(f) {
f();
}

var obj = {
myName: 'Mike',
printName: function() {
log(this.myName);
}
};

obj.printName(); // "Mike"
runFunc(obj.printName); // undefined
runFunc(_.bind(obj.printName, obj)); // "Mike"
<pre></pre>

关于JavaScript 绑定(bind)语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com