审核中~
溜忙之道
首页
溜忙手册
offer之道
项目Git
写文章
登录
·
注册
登录
没有账号,去注册
注册
已有账号,去登录
博客
this
南易_站长
阅读量:3682
关注
this
在JavaScript中,`this`的指向是调用时决定的,而不是创建时决定的,这就会导致`this`的指向会让人迷惑,简单来说,`this`具有运行期绑定的特性。 在一个函数上下文中,this由调用者提供,由调用函数的方式来决定。**如果调用者函数,被某一个对象所拥有,那么该函数在调用时,内部的this指向该对象。如果函数独立调用,那么该函数内部的this,则指向undefined**。但是在非严格模式中,当this指向undefined时,它会被自动指向全局对象。 ### 箭头函数 **所有的箭头函数都没有自己的`this`,都指向外层。** ### 判断一个函数的`this` 如果要判断一个函数的`this`绑定,就需要找到这个函数的直接调用位置。然后可以顺序按照下面四条规则来判断`this`的绑定对象: 1. 由`new`调用:绑定到新创建的对象 2. 由`call`或`apply`、`bind`调用:绑定到指定的对象 3. 由上下文对象调用:绑定到上下文对象 4. 默认:全局对象 注意:箭头函数不使用上面的绑定规则,根据外层作用域来决定`this`,继承外层函数调用的`this`绑定。
评论
表情
发送
0
评论