js的this指向

打印 上一主题 下一主题

主题 992|帖子 992|积分 2978

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x

  • this总是指向调用它所在方法 的对象,而与方法的声明位置无关。在浏览器中,调用方法时没有明白对象的,this指向window。
  1. let obj = {
  2.         name :'a',
  3.         getName:function(){
  4.                                         console.log(name)
  5.                                         }
  6. let otherObj = {
  7.                                 name:'b',
  8.                                 getName:obj.getName
  9.                                 };
  10. var name = 'c';
  11. var getName = obj.getName
  12. obj.getName();// a
  13. otherObj.getName();// b
  14. getName();// 浏览器中this指向window对象,执行结果为c,node中执行结果为undefined,如果声明为严格模式,结果为undefined
复制代码

  • 如果是new的方式,那么函数中的this就是当前的实例对象,对象中的方法,里面的this还是实例对象
  • 在浏览器中setTimeout,setInterval和匿名函数执行时的当前对象是全局对象window,node和严酷模式下是undefined;

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81428

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表