JS--this的几种基本情况

70 阅读1分钟

this的几种基本情况说明

我们研究过的this,都是研究函数私有上下文中的this

1,因为全局上下文中的this->window
2,块级上下文中没有自己的this,在此上下文中遇到的this,都是其所处环境(上级上下文)中的this
3,ES6中的箭头函数块级计上下文类似,也是没有自己的this,遇到的this也是其上级上下文中的

this是执行主体;通俗来讲,是谁把他执行的,而不是在哪执行的,也不是在哪执行的,也不是在哪定义的,所以this是谁和在哪执行以及在哪定义都没有直接的关系

想搞定this,我们可以按照以下总结的规律分析!!

1,给DOM元素进行事件绑定(不论是DOM0还是DOM2),当事件行为触发,绑定的方法执行,方法中的this是当前DOM元素本身
2,当方法执行,我们函数前面是否有“点”
有:“点”之前是谁this就是谁
没有:this就是window(非严格模式下)或者unfedined严格模式“use strict”
匿名函数(自执行函数或者回调函数等)中的this一般都是window、undefined,除非做过特殊的处理!
console.log(this);//打印出来的就是window

image.png

image.png

image.png