码迷,mamicode.com
首页 > 其他好文 > 详细

this的指向

时间:2018-10-31 12:31:56      阅读:105      评论:0      收藏:0      [点我收藏+]

标签:案例   ons   面试   没有   有意思   目的   机制   window   var   

  1.作用域链

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

  作用域链:js中的关键字var function 都可以提前声明和定义,提前声明和定义,放在我们的内存地址(堆)内存中,然后js从上到下逐行执行,遇到变量就去内存地址查找是否存在这个变量有就直接使用,没有就继续向父级查找,直到window下结束,这种查找机制叫作用域链

  this的目的:js代码中存在大量的变量和函数,我们在只用他们的时候他们到底归属谁

  this               ( this是js的关键字,指定一个对象,然后去代替他)

  1.this分为函数内的this,函数外的this

  函数内的this,指向行为发生的主体(方法)

  函数外的this,都指向window   (没有意思)

  2.函数的this和函数在什么环境下定义的没有关系,而和自己的主体有关

  3.主体怎么找?    就看这个函数带没带"."  如果函数和方法执行带".",那么this指向"."前面的对象,如果不带点,this就指向window

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

    小技巧:this个变量的面试题,先找到this的主体是谁,然后把它们换成那个主体就行了

  5.给元素中的某一个事件的绑定方法,

    当事件触发时,就执行绑定的方法,方法中的this指向当前元素;

  

  总结:怎样找到this的指函数内

  函数内的this跟函数在哪定义没有关系,只跟在执行时的主体有关,带点的主体就是"."前面的,不带"."就是window

  案例分析:

  1.function chifan(){

      console.log(this)

    }

  班长.chifan()                             (班长在"."前面  所以这个函数主体是班长           this指向的是班长)

  chifan()                                    (这个里面没带点,所以指向this指向window)

  2.var num=0;

  var obj={

    num=12,

this的指向

标签:案例   ons   面试   没有   有意思   目的   机制   window   var   

原文地址:https://www.cnblogs.com/shangjun6/p/9882106.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!