编程语言
首页 > 编程语言> > JavaScript执行上下文了解

JavaScript执行上下文了解

作者:互联网

一、执行上下文是什么

        在JavaScript中,有三种代码分类:

        1.全局代码(全局中书写的代码)

        2.局部代码(常见函数体里的代码)

        3.Eval代码(使用eval()执行的代码)

在JavaScript中的执行上下文指的是JS代码被解析和运行时所处的环境,被称之为JavaScript中的执行上下文

在执行代码前会有一个预编译的过程,这就像执行上下文差不多(个人感觉)

预编译会提前解析代码,但是不会解析=的操作。

1.全局执行上下文

(1)var 定义的全局变量,赋值为undefined(变量的声明提前,但没有解析赋值的操作,所以是undefined),并添加window的方法

(2)function声明的全局变量,赋值为其函数体代码(函数的声明提前),并添加为window的方法

(3)this指向window

(4)一个程序代码中只存在有且只有一个全局执行上下文

最后开始执行全局的代码。

2.函数执行上下文

(1)调用函数前,函数执行上下文,将实参赋值给形参

(2)函数里面的定义的局部变量,赋值给undefined,并添加window的方法

(3)this指向执行函数的对象

(4)当每次调用函数的时候,都会给该函数创建一个函数执行上下文

3.Eval执行上下文(还未了解)

标签:上下文,函数,代码,JavaScript,执行,赋值
来源: https://www.cnblogs.com/hM1ng/p/16630519.html