欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

25.JavaScript执行上下文

程序员文章站 2022-06-27 20:23:32
JavaScript执行上下文 1.this指向 1).直接调用函数,this指向全局对象 2).在函数外,this指向全局对象 3).通过对象调用或new一个函数,this指向调用的对象或新对象 2.使用new关键字生成一个对象的过程: 1).确定所有形参值以及特殊变量arguments 2).确 ......

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>

结果展示:

25.JavaScript执行上下文