• <legend id='mJgPf'><style id='mJgPf'><dir id='mJgPf'><q id='mJgPf'></q></dir></style></legend>

      <small id='mJgPf'></small><noframes id='mJgPf'>

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

      1. <tfoot id='mJgPf'></tfoot>

        JavaScript 中this指向问题案例详解

        下面用 Markdown 格式编写“JavaScript 中 this 指向问题案例详解”的攻略:

        <legend id='D7uzj'><style id='D7uzj'><dir id='D7uzj'><q id='D7uzj'></q></dir></style></legend>

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

            <small id='D7uzj'></small><noframes id='D7uzj'>

              1. <tfoot id='D7uzj'></tfoot>
                  <tbody id='D7uzj'></tbody>
                • <bdo id='D7uzj'></bdo><ul id='D7uzj'></ul>

                  下面用 Markdown 格式编写“JavaScript 中 this 指向问题案例详解”的攻略:

                  JavaScript 中this指向问题案例详解

                  什么是 this

                  在 JavaScript 中,this 表示当前对象。具体所指对象,取决于 this 的出现位置以及函数的调用方式。

                  this 的指向可以根据不同的情况来变化。同时,有一些坑点需要注意,因为一些场景下 this 的指向不是如我们所期望的那样。

                  示例一:函数作为对象的方法

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

                  let obj = {
                    name: 'obj',
                    getName() {
                      console.log(this.name)
                    }
                  }
                  
                  obj.getName() // 输出 obj
                  

                  在上面的代码中,getName() 方法被定义在对象 obj 内部,当调用 obj.getName() 时,getName() 函数内的 this 指向了 obj 对象,所以输出了 obj。

                  示例二:DOM 事件函数

                  DOM 事件函数中的 this 指向触发事件的元素。

                  <button onclick="console.log(this)">Click Me</button>
                  

                  在上面的代码中,当按钮被点击时,onclick 事件函数内部的 this 指向了按钮元素本身,因此输出了 button 元素。

                  示例三:函数的立即执行表达式

                  函数的立即执行表达式中,this 指向的是 window 对象。

                  (function() {
                    console.log(this)
                  })() // 输出 window 对象
                  

                  在上面的代码中,虽然 this 出现在函数内部,但它并不属于任何一个对象,因此指向的是全局对象 window。

                  总结

                  JavaScript 中 this 指向问题是一个非常重要的概念,需要在日常开发中加以注意。需要特别注意以下几种情况:

                  1. this 值的含义是执行当前代码所处上下文的对象,而由于 JS 是动态作用域语言,全局上注定会有一个全局对象 window(浏览器端)或 global(服务端)。
                  2. this 的值有可能会因环境的不同而发生改变,因此一定要注意函数的调用方式。
                  3. 箭头函数中的 this 是不可更改的,this 值继承自其外层的上下文。

                  希望这篇文章对大家理解 JavaScript 中 this 的指向问题有所帮助。

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  treetable.js没有checked做联动。于是自己基于treetable开发的一个小功能,希望能和大家一起交流一下。 1. 在当前HTML文档checked监听函数中增加以下代码 //联动 table.on('checkbox(quan_list)', function(obj){ //console.log(obj); //当前id var id = obj.
                  当使用Javascript的attachEvent来绑定事件时,我们希望能够给事件处理函数传递一些参数,但是attachEvent本身并不支持传递参数。下面介绍两种解决方法。
                  KnockoutJS是一款流行的JavaScript库,针对一个web应用程序的建立提供了比较好的基础架构。其中,表单的数据绑定功能是KnockoutJS最为常用的功能之一。本文将详细讲解KnockoutJS 3.x
                  下面是用javascript实现改善用户体验之alert提示效果的完整攻略。
                  在学习JavaScript编写贪吃蛇游戏之前,需要掌握以下的前置知识:
                • <tfoot id='B42fq'></tfoot>

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

                      <bdo id='B42fq'></bdo><ul id='B42fq'></ul>
                          <tbody id='B42fq'></tbody>

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

                          • <legend id='B42fq'><style id='B42fq'><dir id='B42fq'><q id='B42fq'></q></dir></style></legend>