zoukankan      html  css  js  c++  java
  • 图解avaScript中this指向(超透彻)

    一个图讲清楚JavaScript中this指向:

     

    说明:

    (1)严格模式下,禁止this关键字指向全局对象会报错
    (2)闭包中的this对象具有全局性,因此通常指向window。 
    (3)优先级:new>apply/call>.调用>默认调用
    (4)null/undefined,在使用apply或者call时传入null/undefined时,会使用默认调用。
    <!DOCTYPE html>
    <html lang="zh">
    
        <head>
            <meta charset="UTF-8" />
            <title>null/undefined参数</title>
        </head>
    
        <body>
    
            <script type="text/javascript">
                function foo(a, b) {
                    console.log('a:' + a + ",b:" + b)
                }
                foo.apply(null, [1, 2])
            </script>
        </body>
    
    </html>

     (4)箭头函数--根据外层作用域决定this指向

    <!DOCTYPE html>
    <html lang="zh">
    
        <head>
            <meta charset="UTF-8" />
            <title>箭头函数的this指向</title>
        </head>
    
        <body>
    
            <script type="text/javascript">
                function foo() {
                    setTimeout(() => {
                        console.log(this.a)
                    }, 100)
                }
                var obj = {
                    a: 2
                }
                foo.apply(obj); //2
            </script>
        </body>
    
    </html>
  • 相关阅读:
    关于树及其各种操作
    正交矩阵与齐次矩阵
    矩阵的行列式与矩阵的逆
    线性变换
    矩阵
    向量的运算
    求两直线的交点
    微任务防抖
    二项分布
    二项式定理
  • 原文地址:https://www.cnblogs.com/mengfangui/p/7273870.html
Copyright © 2011-2022 走看看