ES6中this指向

运行时环境决定this的指向

1.普通函数:根据调用者来指向,谁调用this就指向谁;

例如:

在默认情况(非严格模式下,未使用 'use strict'),没找到直接调用者,则this指的是 window (约定俗成)

在严格模式下,没有直接调用者的函数中的this是 undefined

使用call,apply,bind(ES5新增)绑定的,this指的是 绑定的对象

2.箭头函数:根据运行时所处的环境进行指向,在那个环境this就执行谁;

例如:

使用箭头函数,可以让我们解决一些在匿名函数中 this指向不正确的问题; 但是要注意在和普通函数混合的时候,this的指向可能是window !

改变this指向方法

原生js: .call()

jQuery :  .proxy()

利用赋值 var  that  =  this; 来改变嵌套函数的 'this' 指向

利用es6 箭头函数 改变 this指向

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容