• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

梦中城堡

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

javascript中的this指向

javascript中,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定,this最终指向调用它的对象。

1.函数调用模式(指向window)

当函数不为对象的属性,即只是单纯的函数调用,此时,this被绑定为全局变量,也就是指向的是浏览器下的window对象。

 2.方法调用模式(指向对象)

当函数被保存为到对象的属性时,就称为这个对象的方法。当被调用时,this被绑定到这个对象上。如果调用表达式包含一个提取属性的动作(通过. 或 []),那么它被称为方法调用,此时,this指向的是当前的对象,也就是obj。

 

 

 

 undefined是因为在myName作用域中没有name这个变量

 

 

3.构造函数调用

 

 使用new运算符创建出一个新对象,this会被绑定到这个新对象上。这个函数就可以成为此对象的构造函数,此时的this指向这个新对象

4.事件调用函数(指向调用的节点)

 

 5.ES6箭头函数中的this

 

 

 ES6中this指向是上下文的指向,也可以说是父级函数的指向。

 

posted on 2020-05-17 20:34  熬夜狗加一  阅读(132)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3