zoukankan      html  css  js  c++  java
  • 25.JavaScript执行上下文

    JavaScript执行上下文

    1.this指向

    1).直接调用函数,this指向全局对象

    2).在函数外,this指向全局对象

    3).通过对象调用或new一个函数,this指向调用的对象或新对象

    2.使用new关键字生成一个对象的过程:

    1).确定所有形参值以及特殊变量arguments

    2).确定函数中通过var声明的变量,将它们的值设置为undefined。若1)步骤中形参中已有重名的变量名称,则直接忽略2)步骤,重名变量的值还是1)步骤中的值

    3).确定函数中通过字面量声明的函数,将它们的值设置为指向函数对象。若1)步骤中形参已有重名的变量名称,则3)步骤中的函数字面量声明将会覆盖掉1)步骤中的重名变量的值

    例题:

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    
    <body>
        <script>
            function A(a, b) {
                console.log(a, b);//a的值是形参a的值,b的值是下面函数b字面量的值
                var b = 123;
    
                function b() {}
                var a = function () {}
                console.log(a, b);//a的值是上面变量a的值,b的值是上面变量b的值
            }
    
            A(1, 2);
        </script>
    </body>
    
    </html>
    index.html

    结果展示:

  • 相关阅读:
    destoon代码从头到尾捋一遍
    php中foreach()函数与Array数组经典案例讲解
    刷题比赛
    #Math
    福慧双修(both)
    NOIP17提高模拟训练18 长途旅行(travel)
    NOIP提高组模拟训练18 正确答案(answer)
    NOIP17提高组模拟赛17 -乐曲创作(music)
    #2017 Multi-University Training Contest
    CodeForces
  • 原文地址:https://www.cnblogs.com/lanshanxiao/p/12824478.html
Copyright © 2011-2022 走看看