我们知道,当一个函数被调用时,一个新的执行上下文就会被创建,一个执行上下文的声明周期大致分为两个阶段:创建阶段和执行阶段。
创建阶段
在这个阶段,执行上下文会分别创建变量对象,确认作用域链,以及确定 this 指向问题
执行阶段
创建阶段之后,就会开始执行代码,这个时候就会完成变量赋值,函数引用,以及执行其他可执行代码,

从执行上下文的生命周期可以看到它的重要性,其中涉及变量对象,作用域链,this等许多重要知识点,但是并不是那么容易搞懂的,,这些概念有助于我们真正的理解javascript代码运行的机制。

JavaScript变量的生命周期
最近看国外经典教材的时候发现JavaScript与熟知的Java,C,C++都不同的特性,其中一个就是变量的生命周期。

1.在JavaScript中,对于for循环中定义的i变量,其生命周期在循环结束后仍然是有效的。

for (var i=0; i < 10; i++){doSomething(i);
}
alert(i); //10

这样的特性对于我们传

js系列七:生命周期相关推荐

  1. Vue 进阶系列丨生命周期

    Vue 进阶系列教程将在本号持续发布,一起查漏补缺学个痛快!若您有遇到其它相关问题,非常欢迎在评论中留言讨论,达到帮助更多人的目的.若感本文对您有所帮助请点个赞吧! 2013年7月28日,尤雨溪第一次 ...

  2. js浏览器页面生命周期

    DOMContentLoaded.load.beforeunload.unload HTML 页面的生命周期包含三个重要事件: DOMContentLoaded -- 浏览器已完全加载 HTML,并构 ...

  3. Android 组件系列-----Activity生命周期

    本篇随笔将会深入学习Activity,包括如何定义多个Activity,并设置为默认的Activity.如何从一个Activity跳转到另一个Activity,还有就是详细分析Activity的生命周 ...

  4. Vue.js函数的生命周期

    一.vue里的生命周期是什么? vue实例从创建到销毁的过程称之为vue的生命周期 二.vue.js里面的钩子函数 钩子函数 昰什么 相当于回调函数 即让开发者在特定的时候 执行自定义逻辑 1.自定义 ...

  5. Compose系列 四 生命周期

    本系列是我学习compose过程中,对官方文档的翻译和解读,以及实验性的Demo工程.主要参考官方文档和中文手册 全部的正文内容(Demo工程除外)源自Compose官方文档,个人解读以引用的形式插入 ...

  6. Maven学习小结(七 生命周期[转])

    Maven2的阶段(生命周期)说明: Maven2拥有三套独立的生命周期,Maven的命令也是基于这些生命周期来说的. 1.clean:清理先前构建的构件,又分为下面三个下阶段: a.pre-clea ...

  7. 【Vue.js学习】生命周期及数据绑定

    一.生命后期 官网的图片说明: Vue的生命周期总结 var app = new Vue({el:"#app", beforeCreate: function(){console. ...

  8. vue.js框架的生命周期:常用钩子函数

    //组件实例化之前执行的函数 beforeCreate:function () { alert("组件实例化之前执行的函数") }, //组件实例化完毕执行的函数 created: ...

  9. Java高并发编程详解系列-线程生命周期观察者

    引言   在之前的博客中我们知道,Thread提供了很多可获取的状态,以及判断是否alive的方法,但是这些方法都是线程本身提供的,在Runnable运行的过程中所处的状态是无法直接获取到的到,例如什 ...

  10. maven系列:生命周期

    前面我们详细讲解了maven的一大亮点:依赖,maven做为工程大器,还有个特别重要的功能:构建今天我们主要讲解maven的生命周期,maven的生命周期就是对软件项目构建工作的抽象,一个完整的项目构 ...

最新文章

  1. 将springboot项目和vue项目部署到windows 2016 server(服务器)
  2. python从入门到入土表情包-Python开发个人专属表情包网站,表情在手,天下我有...
  3. Spring注解@Resource和@Autowired区别对比
  4. 打开高效文本编辑之门_Linux Awk之条件判断与循环
  5. R中rep函数的使用
  6. mysql pt_MySQL慢查询之pt-query-digest分析慢查询日志
  7. anjular.js读取数据库数据调用实例
  8. 浏览器中的JavaScript
  9. npkill(安全快速的清理电脑上的 node_modules)
  10. 用Feed43为随意站点定制RSS feed教程~
  11. [php]laravel框架容器管理的一些要点
  12. 459.重复的子字符串
  13. 怎么获取layer中的表单值_layui抓取表单数据
  14. 启用windows功能NetFx3时出错的离线解决方案
  15. android timepicker 设置颜色,android – 更改TimePicker文本颜色
  16. 淘宝API item_history_price - 获取商品历史价格信息
  17. 晒晒那些我在云栖社区获得的奖品
  18. Docer中使能GPU,GDB,perf
  19. SAP: ZSD012 Send Billing Document to Customer with PDF Attachment
  20. “哥伦布”华为,与智能联接新大陆

热门文章

  1. html导航条布局,div+css菜单导航条布局自适应宽度
  2. 奶牛戴上VR眼镜“看片”,开心了可以多产奶:俄罗斯官方做了实验,拯救奶牛的冬季忧郁...
  3. 反转链表(leetcode 206)
  4. 第一个blog--常用在线网站
  5. H.265和VP9视频编码要被干掉?解读全新AV1编码标准
  6. submit的form表单提交事件
  7. 计算机中分页符号是什么,分节符和分页符有什么区别?
  8. Unity 跳转GooglePlay 谷歌商店 应用商店
  9. api多版本方案(URL)
  10. 【车牌识别】基于模板匹配算法实现新能源车牌识别matlab源码