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

this指向问题

时间:2019-05-24 00:31:14      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:处理   改变   调用函数   his   --   定时器   创建   事件   有一个   

1.函数调用模式:fn() 这里的this指向window

2.方法调用模式:obj.fn( ) this指向调用者,谁调用,就指向谁

3.构造函数调用模式:new Person()this指向新创建的实例

4.上下文调用模式:call()-----任何函数都可以看成一个特殊的对象,也可以设置属性和方法,都有一个call方法

              call方法也可以用于调用函数,还可以指定函数执行的this指向

              语法:fn.call(this指向,x,y,z) 

           apply()---每个函数都有一个apply方法,apply也可以用于调用函数,还可以指定函数执行的this指向

              语法:fn.apply(this指向,[ x, y, z ] )

         bind()----任何函数都有一个bind方法,作用:复制一个新函数,并且将新函数的this固定死指向传入的this的值

              语法:var newFn=fn.bind(this指向)==》只是改变了新函数newFn的指向,fn的并没有改变

5.定时器中的this指向window

6.事件处理函数中,浏览器让this指向了事件源

               

this指向问题

标签:处理   改变   调用函数   his   --   定时器   创建   事件   有一个   

原文地址:https://www.cnblogs.com/hhmmpp/p/10915463.html

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