求解释一下下面几句ES6的代码

求解释一下下面几句代码:

wr.onopen = this._onWebRTCOpen.bind(this);
wr.onclose = this._onWebRTCClose.bind(this);
wr.onmessage = this._onWebRTCMessage.bind(this);
wr.onerror = this._onWebRTCError.bind(this);

解释一下这几句代码的作用即可,THX!
阅读 2.2k
3 个回答

理解thisfunction里指向的是谁!

直接把一个函数赋值到变量上,执行的时候即使你这个function原本是一个对象的成员方法,this也不会指向原来的对象去。 bind帮你处理了这个问题。所以你来理解的是bind是什么鬼!https://developer.mozilla.org...

bind可以这么理解就是返回了一个新的方法,这个方法在执行的时候,执行的主题还是原来方法的内容,只是this指向了bind时绑定的对象上。

这不算es6知识点,下次遇到问题,建议先看是不是有啥关键字什么方法没见过的,先搜一搜,比如这里的bind

bind的知识点,百度一下不就行

首先bindES5就有的。
然后,意思就是将函数内部的this改为传入的this,并对此函数备份,赋值给等号左边。别的我不清楚还有什么能解释的。传送门

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题