gpt4 book ai didi

javascript - Function.prototype.call() 和 Function.prototype.bind() 有什么区别?

转载 作者:行者123 更新时间:2023-11-30 10:33:55 24 4
gpt4 key购买 nike

我浏览了 MDN 文档,但我并没有真正理解 call() 和 bind() 之间的区别。他们似乎都在做同样的事情——改变 this 的上下文在一个函数里面。那么它们之间到底有什么区别呢?什么时候应该使用哪个?

最佳答案

call 实际上调用具有指定上下文的函数,而 bind 返回一个新函数,该函数将在调用时使用指定的上下文。使用 bind 的一个例子是设置事件监听器,通常上下文会设置为触发事件的对象。您可以使用 bind 创建一个使用您自己的上下文的函数,并将其作为监听器函数传递。

关于javascript - Function.prototype.call() 和 Function.prototype.bind() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15129149/

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