关于this

来源:互联网 发布:精准定位软件 编辑:程序博客网 时间:2024/05/21 19:21
  1. 《js高程》中的原文:“this对象是在运行时基于函数的执行对象绑定的”,注意,“基于”不是“等于”。实际上this指向的不是函数的作用域,它位于函数的作用域——也就是变量对象之中,与arguments一样是个参数,在函数被调用时被传入一个值,这个值就是调用函数的对象(dot左边的那位仁兄)。
  2. 匿名函数,或所谓“函数本身”的直接调用,相当于global.foo(),所以这种情况下this指向global.
  3. this必定存在于每个函数中,所以内部函数不能直接访问到外部函数的this。
  4. =>箭头函数的this很不一样,我猜测,它很可能没有this——我的意思是:箭头函数的this来自于作用域链的上游(作为对比,常规函数只能直接访问自己作用域的this,而上游的this因此无法直接访问)。如果在箭头函数中创建多个、多层箭头函数,里外箭头函数作用域中的this指向同一个对象。
  5. node.eventListener函数中的this指向node对象。因为它被认定是node的method
原创粉丝点击