1. 主页
  2. 文档
  3. ES6
  4. 模板字符与箭头函数
  5. 非箭头函数中的 this 指向

非箭头函数中的 this 指向

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>非箭头函数中的 this 指向</title>
  </head>
  <body>
    <script>
      // 1.全局作用域中的 this 指向
      // console.log(this); // window

      // 2.一般函数(非箭头函数)中的 this 指向
      // 'use strict';
      function add() {
        console.log(this);
      }

      // 严格模式就指向 undefined
      // add(); // undefined->window(非严格模式下)

      // window.add();

      // const calc = {
      //   add: add
      // };
      // // calc.add(); // calc
      // const adder = calc.add;
      // adder(); // undefined->window(非严格模式下)

      // document.onclick = function () {
      //   console.log(this);
      // };
      // document.onclick();

      // function Person(username) {
      //   this.username = username;
      //   console.log(this);
      // }

      // const p = new Person('Alex');

      // 只有在函数调用的时候 this 指向才确定,不调用的时候,不知道指向谁
      // this 指向和函数在哪儿调用没关系,只和谁在调用有关
      // 没有具体调用对象的话,this 指向 undefined,在非严格模式下,转向 window
    </script>
  </body>
</html>
这篇文章对您有用吗?

我们要如何帮助您?