<tfoot id='pWfwP'></tfoot>
    1. <legend id='pWfwP'><style id='pWfwP'><dir id='pWfwP'><q id='pWfwP'></q></dir></style></legend>

      1. <small id='pWfwP'></small><noframes id='pWfwP'>

        • <bdo id='pWfwP'></bdo><ul id='pWfwP'></ul>
        <i id='pWfwP'><tr id='pWfwP'><dt id='pWfwP'><q id='pWfwP'><span id='pWfwP'><b id='pWfwP'><form id='pWfwP'><ins id='pWfwP'></ins><ul id='pWfwP'></ul><sub id='pWfwP'></sub></form><legend id='pWfwP'></legend><bdo id='pWfwP'><pre id='pWfwP'><center id='pWfwP'></center></pre></bdo></b><th id='pWfwP'></th></span></q></dt></tr></i><div id='pWfwP'><tfoot id='pWfwP'></tfoot><dl id='pWfwP'><fieldset id='pWfwP'></fieldset></dl></div>

        JavaScript箭头函数中的this详解

        时间:2023-12-08
      2. <small id='7YUQg'></small><noframes id='7YUQg'>

          <legend id='7YUQg'><style id='7YUQg'><dir id='7YUQg'><q id='7YUQg'></q></dir></style></legend>

          • <tfoot id='7YUQg'></tfoot>
            <i id='7YUQg'><tr id='7YUQg'><dt id='7YUQg'><q id='7YUQg'><span id='7YUQg'><b id='7YUQg'><form id='7YUQg'><ins id='7YUQg'></ins><ul id='7YUQg'></ul><sub id='7YUQg'></sub></form><legend id='7YUQg'></legend><bdo id='7YUQg'><pre id='7YUQg'><center id='7YUQg'></center></pre></bdo></b><th id='7YUQg'></th></span></q></dt></tr></i><div id='7YUQg'><tfoot id='7YUQg'></tfoot><dl id='7YUQg'><fieldset id='7YUQg'></fieldset></dl></div>

                <bdo id='7YUQg'></bdo><ul id='7YUQg'></ul>
                  <tbody id='7YUQg'></tbody>

                  标题:JavaScript箭头函数中的this详解

                  在JavaScript中,this是一个非常重要的关键字,它表示当前上下文中的对象。然而,在箭头函数中,this却和常规的函数有所不同,它的指向更有一些特别之处。下面我们将对JavaScript箭头函数中的this进行详细讲解。

                  正常函数中的this

                  在正常函数中,this的指向是根据函数的调用方式来决定的。以下是不同情况下this的指向:

                  全局范围内:

                  如果函数在全局范围内被调用,this会指向window对象。

                  function test() {
                    console.log(this); // 输出 window
                  }
                  test();
                  

                  函数作为对象的方法:

                  当函数作为对象的方法被调用时,this会指向调用该方法的对象。

                  let obj = {
                    name: "John",
                    sayName: function() {
                      console.log(this.name);
                    }
                  }
                  obj.sayName(); // 输出 John
                  

                  构造函数:

                  当使用构造函数创建一个新对象时,this会指向这个新创建的对象。

                  function Person(name) {
                    this.name = name;
                  }
                  let person = new Person("John");
                  console.log(person.name); // 输出 John
                  

                  apply和call方法:

                  apply和call方法可以显式地指定函数的调用对象,并且this会被设置为传递的第一个参数。

                  function sayName() {
                    console.log(this.name);
                  }
                  let obj = {name: "John"};
                  sayName.apply(obj); // 输出 John
                  

                  箭头函数中的this

                  与通常的函数不同,箭头函数中的this的指向是词法作用域中的this,而不是函数运行时的调用对象。

                  let obj = {
                    name: "John",
                    sayName: function() {
                      let func = () => {
                        console.log(this.name);
                      }
                      func();
                    }
                  }
                  obj.sayName(); // 输出 John
                  

                  在上述代码中,箭头函数内的this会继承外部函数sayName中的this,即obj对象,所以能够正确地输出name属性为John。

                  另外,如果箭头函数嵌套在普通函数中,this指向则不会改变。

                  let obj = {
                    name: "John",
                    sayName: function() {
                      let func = () => {
                        console.log(this.name);
                      }
                      return func;
                    }
                  }
                  let test = obj.sayName();
                  test(); // 输出John
                  

                  上述代码中,由于箭头函数被嵌套在普通函数中,因此this仍然指向外层的普通函数的this。

                  在使用箭头函数时要注意,它并不适合所有的场景,而是仅适用于那些不需要改变作用域的场景。

                  总结

                  本篇攻略详细介绍了JavaScript箭头函数中的this,分别介绍了this在正常函数中的指向和箭头函数中的指向,并给出了两个示例进行说明。需要注意的是,箭头函数并不适合所有的场景,仅适用于不需要改变作用域的场景。通过学习本文,相信你已经对箭头函数中的this有了一个更深入的认识。

                  上一篇:jquery轻量级数字动画插件countUp.js使用详解 下一篇:JavaScript中的 new 命令

                  相关文章

                1. <small id='7S3wt'></small><noframes id='7S3wt'>

                    <legend id='7S3wt'><style id='7S3wt'><dir id='7S3wt'><q id='7S3wt'></q></dir></style></legend>
                    <i id='7S3wt'><tr id='7S3wt'><dt id='7S3wt'><q id='7S3wt'><span id='7S3wt'><b id='7S3wt'><form id='7S3wt'><ins id='7S3wt'></ins><ul id='7S3wt'></ul><sub id='7S3wt'></sub></form><legend id='7S3wt'></legend><bdo id='7S3wt'><pre id='7S3wt'><center id='7S3wt'></center></pre></bdo></b><th id='7S3wt'></th></span></q></dt></tr></i><div id='7S3wt'><tfoot id='7S3wt'></tfoot><dl id='7S3wt'><fieldset id='7S3wt'></fieldset></dl></div>
                      <bdo id='7S3wt'></bdo><ul id='7S3wt'></ul>
                    <tfoot id='7S3wt'></tfoot>