ECMA学习小结(1)——什么是ECMAScript,JAVAScript与ECMA的关系

差不多一星期,ECMA初读完了~初读过程中跳过了一些难理解的地方和很多细节部分。接下来分几篇对ECMA重新细读,同时做一个总结。

 

一、什么是ECMAScript(以下简称ECMA),JAVAScript与ECMA的关系

 

JavaScript是一门面向对象的动态语言。静态语言(像Java,C),是需要编译器编译后执行的,而JavaScript是由解释器直接解析运行的。这种解释器即是Javascript引擎,比如Chrome的V8。

 

Javascript的运行环境,是由宿主环境和执行期环境构成的。宿主环境是外壳程序生成的(这里以Web浏览器为例),执行期环境则是由这个引擎生成的。

 

这两个环境分别是干嘛的呢?因为JavaScript是一个脚本语言,它本身不提供IO接口,没有与系统和外界通信的能力,所以这些事情都交给宿主环境来完成。比如window对象的alert方法,document.write()等。而Javascript创建执行环境,生成内置对象这些它自己的事儿,就在执行期环境中完成。

 

ECMA就是用来规范Javascript引擎的。 

 

ECMA是一个标准,它制定了脚本语言的一套规则。JavaScript就是依据这套规则实现的,可以看作ECMA的一个实例。

 

一个ECMA的实例必须提供并支持这套规则里所有的类型(types),值(values),对象(objects),属性(properties),函数(functions),程序语法和语义。(ECMA也正是由这些东西组成的)。

 

posted @ 2013-07-02 17:29  misa  阅读(290)  评论(0编辑  收藏  举报