发表于: 2017-07-21 23:37:22
1 945
今日所做:
1.学习一下js的基础知识:js的宿主执行环境,以及执行上下文等概念
2.js语言不可脱离了环境(例如浏览器)而存在,它和c语言不同,C语言可以开发系统,
制造环境,而js只能寄生在某个具体的环境中才能够工作。
3.运行环境由两部分组成,宿主环境和执行环境:宿主环境由外壳程序创建和维护,
为语言提供服务,宿主环境可能运行很多种脚本语言。宿主环境一般会创建一套公共对象系统,
这套对象系统对所有脚本语言开放,并允许它们自由访问。同时,宿主环境还会提供公共接口,
用来装载不同的脚本语言引擎。这样我们可以在同一个宿主环境中装载不同的脚本引擎,
并允许它们共享宿主对象。例如不光是js可以在浏览器中运行,其他的一些脚本语言一样可以。
外壳程序不仅仅是Web浏览器,只要能够提供JavaScript引擎执行的环境都可以算做外壳程序。
4.javascript是一个单线程语言,这意味着在浏览器中同时只能做一件事情。当javascript解释器
初始执行代码,它首先默认进入全局上下文。每次调用一个函数将会创建一个新的执行上下文。
5.每次新创建的一个执行上下文会被添加到作用域链的顶部,有时也称为执行或调用栈。浏览器总是运行位于作用域链顶部的当前执行上下文。一旦完成,当前执行上下文将从栈顶被移除并且将控制权归还给之前的执行上下文。
不同执行上下文之间的变量命名冲突通过攀爬作用域链解决,从局部直到全局。这意味着具有相同名称的局部变量在作用域链中有更高的优先级。
明日计划:
等后端的接口,继续学习js基础
遇到的问题:
暂无
今日收获:
对js的执行环境有了更深入的理解
评论