foo()内部创建的箭头函数会捕获调用时foo()的this。因为foo()的this绑定到obj1,bar(引用箭头函数)的this也会绑定到obj1,箭头函数的绑定无法被修改。(new也不可!)
总结
如不雅要断定一个运行中的函数的this绑定,就须要找到这个函数的直接调用地位。找到之后就可以次序应用下面这四条规矩来断定this的绑定对象。
可以看到new绑定比隐式绑定优先级高。然则new绑定和显式绑定谁的优先级更高呢?
由new调用?绑定到新创建的对象。
由call或者apply(或者bind)调用?绑定到指定的对象。
由高低文对象调用?绑定到那个高低文对象。
默认:在严格模式下绑定到undefined,不然绑定到全局对象。
【编辑推荐】
- 基于Python和JavaScript编写物联网温度计法度榜样
- Prepack——JavaScript代码优化对象
- BOOM:一款有趣的Javascript动画效不雅
- JavaScript异步与Promise实现
- JavaScript深刻之创建对象的多种方法以及优缺点
推荐阅读
暗码忘了怎么办生活中路由器应用时光一长,不免产生问题,我们想要更改无线暗码、信道等无线路由器的设置,>>>详细阅读
地址:http://www.17bianji.com/lsqh/35377.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示