【笔记】执行环境#仅概念#

概念嘛,不知道怎么说,但是已经理解,以后更新。?(^∇^*)

每一个执行环境都有一个变量对象,这个对象我们是无法访问的,但解析器在处理数据时会在后台使用。

? 某个执行环境的所有代码执行完毕后,该环境被销毁,保存在其中的所有变量和函数定义也随之销毁。(全局执行环境要到应用程序退出才被销毁)

? 每个函数都有自己的执行环境。当执行流进入到一个函数时,函数的环境就会被推进一个环境栈中。而在函数执行之后,栈将该环境弹出,把控制权返回给之前的执行环境。

? 作用域链:当代码在环境中执行时,会创建变量对象的一个作用域链。作用域的前端,始终都是当前执行的代码所在的环境对应的变量对象。

? 延长作用域链:在try{}catch(){}和with语句块中实现,不太理解,以后补。

时间: 2024-08-13 07:53:40

【笔记】执行环境#仅概念#的相关文章

《JavaScript高级程序设计》读书笔记 ---执行环境及作用域

执行环境及作用域 执行环境(execution context,为简单起见,有时也称为“环境”)是JavaScript 中最为重要的一个概念.执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为.每个执行环境都有一个与之关联的变量对象(variable object),环境中定义的所有变量和函数都保存在这个对象中.虽然我们编写的代码无法访问这个对象,但解析器在处理数据时会在后台使用它.全局执行环境是最外围的一个执行环境.根据ECMAScript 实现所在的宿主环境不同,表示执行环境的

第六章 javaScript执行环境和作用域

这个只是点对于初学者其实大概了解就可以,但是要研究明白javaScript的机制,就是非常必要的,这只是我的一些记录,大家参考即可,如有错误请指出. 执行环境的概念是javaScript一个虚拟的概念,如何定义它呢?它的作用又是什么呢?它是怎么组成的呢? 大家都比较认可的说法:执行环境又称为执行上下文,从实际的表现来看,可以把它理解为由“对象”组成的一个堆栈.既然是堆栈,就是先入后出了. 组成堆栈的对象是什么对象?我没有找到确切的定义,基于我自己的理解,这个对象是一个自定义对象,里边包含有变量.

JavaScript中执行环境和栈

在这篇文章中,我会深入理解JavaScript最根本的组成之一 : "执行环境(执行上下文)".文章结束后,你应该对解释器试图做什么,为什么一些函数/变量在未声明时就可以调用并且他们的值是如何确定的有一个清晰的认识. 什么是执行环境(执行上下文)当代码在JavaScript中运行的时候,代码在环境中被执行是非常重要的,它会被评估为以下之一类型来运行:全局代码:默认环境,你的代码第一时间在这儿运行.函数代码:当执行流进入一个函数体的时候.Eval代码:在eval()函数中的文本. 你可以

DOM笔记(八):JavaScript执行环境和垃圾收集

一.执行环境 在有关于JavaScript对象或者this的指向问题时,脱离不了的另外一个概念就是执行环境,即上下文环境.执行环境在JavaScript是一个很重要的概念,因为它定义了变量或函数有权访问的其它数据,决定了它们各自的行为.每个执行环境都有一个与之关联的变量对象,在该环境中定义的所有变量和函数都保存在这个对象中. 全局环境时最外围的一个执行环境.在Web浏览器中,全局环境被认为是Window对象(后续笔记中会讨论),因此所有的全局变量和函数都是作为window对象的属性或者方法创建的

javascrip高级程序设计的学习笔记【作用域和执行环境】

javascript变量可以用来保存两种类型的值:基本类型和引用类型.基本类型包括以下5种:undefined.Null.string.Boolean.Number等, 引用类型是object:基本类型和引用类型都具有几下特点: 1.基本类型值在内存中占据固定大小的空间,因此基本类型的值被保存在栈内存中: 2.从一个变量向另一个变量复制基本类型的值,会创建这个值的副本. 3.引用类型的值是对象,保存在堆中: 4.包含引用类型值的变量实际并不是包含对象本身,而是一个指向该对象的指针: 5.从一个变

JS笔记(执行环境,作用域)

1.执行环境对应一个变量对象,包括了这个环境所有的变量和函数. 2.执行环境也可以是函数,每个函数都有自己的执行环境,此时,函数的变量对象是活动对象,且最开始只有一个变量,即命名参数,arguments对象. 3.当代码运行,会创建变量对象的作用域链,作用域的最前端是当前执行环境的变量对象,当代码此时在当前的变量环境找不到标识符时,会再寻找下一个变量对象,直至找到,最后个变量对象为全局执行环境变量对象.

浅谈JS执行环境及作用域

 今天刚刚开通博客,也是第一次写博文,略感紧张.作为一个表达能力弱弱的人来说,自己花三分钟理解一个知识点,当别人问起时,也许需要30分钟才只是让别人知道自己在说什么,一点也不夸张,希望在博客上可以练习对语言的组织能力并记录学习笔记与大家一起交流. 进入正题>> 首先,相关的概念定义如下: 1. 执行环境: 所有 JavaScript 代码都是在一个执行环境中被执行的.执行环境是一个概念,一种机制,用来完成JavaScript运行时在作用域.生存期等方面的处理,它定义了变量或函数有权访问的其他数

什么是AWS Lambda?——事件驱动的函数执行环境

AWS CTO Werner Vogels在AWS re:Invent 2014大会的第二场主题演讲上公布了两个新服务和一系列新的实例,两个新服务都相当令人瞩目:第一个宣布的新服务是Amazon EC2 Container Service,跟Docker紧密联合的管理服务,令人兴奋,不过不是本篇报道的重点. 本篇报道主要想向大家介绍一下今天宣布的第二个服务:AWS Lambda. 什么是AWS Lambda? 根据Jeff Barr在博客上的描述,Lambda是一个"可简单创建Lambda函数.

JavaScript 执行环境与作用域

前面我说到过,执行环境是js中最为重要的一个概念.执行环境定义了变量和函数有权访问的其他数据,决定了它们各自的行为. 在JavaScript中,每一个函数都表示为一个对象,更确切地说,是Function对象的一个实例.Function对象与其他的对象一样,都拥有可以编程访问的属性,和一系列不能通过代码访问而仅提供了JavaScript引擎存取的内部属性.譬如[[Call]]属性,表示这个对象可以被执行,其中有一个内部属性是[[Scope]],由ECMA-262标准第三版定义. 内部属性[[Sco