this

Posted gdqx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了this相关的知识,希望对你有一定的参考价值。

作用域:浏览器会给js一个生存环境(栈内存)

作用域链:js中的关键字var和function都可以提前声明和定义,提前声明和定义的放在我们的内存地址(堆内存)中,

     然后js从上到下逐行执行,遇到变量就去内存地址查找,是否有这个变量,有就使用,没有就继续向父级作用域查找知道window下结束,这种查找机制叫作用域链。

js代码中存在大量的变量和函数,我们在使用他们的时候一定要知道他们归属谁。

 

this

  1、js的关键字指定一个对象,然后去替代他

      函数内的this    函数外的this

      函数内的this指向行为发生的主体

      函数外的this都指向window

  2、函数内的this和函数在什么环境下定义都没还有关系而只和自己的主体有关

  3、主体

      就看这个函数(方法)带不带点

      如果函数和方法执行带点,那么this就指向点前面的对象

      如果没有就是window

  4、自执行函数里面的this都指向window

  5、给元素中的某一个事件绑定方法,当事件触发时,执行绑定的方法,方法中的this指向当前元素

 

 例如:

          技术分享图片        执行出来为     技术分享图片

 

 

 

   

 

以上是关于this的主要内容,如果未能解决你的问题,请参考以下文章

前端面试-闭包和作用域

请求拦截 XMLHttpRequest和fetch

构造函数

Vue中的$set的使用

this与super

java-this使用