欢迎光临散文网 会员登陆 & 注册

千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

2023-07-19 18:14 作者:加冰酸梅汤  | 我要投稿

对this的理解

1.任何情况下直接在script中写入的this都是window。

2.函数中的this 非严格模式:this指向window, 严格模式时:this指向undefined。

3.箭头函数的this:this都指向箭头函数外上下文环境的this指向

4.对象中this:对象属性的this指向对象外上下文环境的this

对象方法(普通函数)中的this,指向当前对象(谁执行该方法,this就指向谁)

5.回调函数的this指向

1)setTimeout,setInterval回调函数不管是否是严格模式都会指向window。

2)通过在函数内执行当前回调函数 非严格模式:this指向window, 严格模式时:this指向undefined。

3)递归函数中的this 非严格模式:this指向window, 严格模式:this指向undefined。

4)使用arguments0执行函数时,this指向arguments。

5)事件中的回调函数,this指向事件侦听的对象(e.currentTarget)

6.call、apply、bind方法执行时this的指向

如果call、apply、bind传参时,第一个参数传入的不是null或者undefined,传入什么this指向什么

如果第一个参数传入的是null或者undefined,非严格模式下指向window

7.在ES6的类中this的指向

在构造函数中的this指向实例当前类所产生的新实例对象

类中实例化方法中this指向谁执行该方法,this指向谁

类中静态方法中this执行该类或者该类的构造函数

类中实例化箭头方法,this仍然指向当前类实例化的实例对象

8.ES5原型对象中this指向

在原型的方法中,this指向实例化当前构造函数的实例化对象(谁执行该方法,this指向谁)

千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip的评论 (共 条)

分享到微博请遵守国家法律