正确的 Javascript 绑定语法是什么?
What is the correct Javascript bind syntax?
我找到了两种使用 Javascript 的本机 bind
的方法,因为我从 jQuery.proxy() 迁移出来:
this.thing.on(event, someHandler.bind(this))
和
this.thing.on(event, someHandler).bind(this)
据我所知,它们都做同样的事情,但我担心后者可能会导致 on()
(或其位置的任何函数)出现问题。前一种语法是我从 $.proxy()
开始使用的语法,对我来说它似乎明确绑定到处理程序,所以我倾向于使用该语法。
这两行实际上是在做同样的事情吗?如果不是,哪个是更安全的选择?
我找到了两种使用 Javascript 的本机 bind
的方法,因为我从 jQuery.proxy() 迁移出来:
this.thing.on(event, someHandler.bind(this))
和
this.thing.on(event, someHandler).bind(this)
据我所知,它们都做同样的事情,但我担心后者可能会导致 on()
(或其位置的任何函数)出现问题。前一种语法是我从 $.proxy()
开始使用的语法,对我来说它似乎明确绑定到处理程序,所以我倾向于使用该语法。
这两行实际上是在做同样的事情吗?如果不是,哪个是更安全的选择?