Java教程

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执行上下文了解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!