关于javascript:理解JavaScript中的this

41次阅读

共计 496 个字符,预计需要花费 2 分钟才能阅读完成。

置信很多人在初学 JavaScript 的时候都对 this 的指向问题感觉到比拟蛊惑。它不像 PHP,Java 语言中的 this 有很明确的指向,也不会让人容易搞混。
在 JavaScript 中 this 就是函数调用的上下文,在 JavaScript 中有四种函数调用:

  1. 函数调用,例如 alert(‘hello world’)
  2. 办法调用,例如 console.log(‘hello world’)
  3. 结构函数调用,例如 new RegExp(‘\d’)
  4. 间接调用,例如 alert.call(undefined,’hello world’)

每种调用形式都定义了本人的上下文,所以 this 的体现也是不尽相同的。
另外,strict mode严格模式也会影响可执行上下文。
了解 this 的关键在于,对于函数执行以及它是如何来影响上下文的有一个清晰的视角。
请相熟一下几个概念:

  1. 函数调用指的就是执行形成函数体的代码,说白了,就是间接调用一个函数,比方调用 parseInt 函数,调用的形式就是parseInt('15'),一个普普通通的调用,简单明了,没有任何副作用。
  2. 执行上下文,就是函数体内 this 的值。
  3. 函数的作用域就是函数体内可能拜访到的变量和函数。
正文完
 0