部分ECMAScript术语

ECMAScript

Sun(现在的Oracle)公司持有着“Java”和“JavaScript”的商标.这就让微软不得不把自己的JavaScript方言称之为“JScript”.然后,在这门语言被标准化的时候,就必须使用一个与二者都不同的名字.“ECMAScript”就这样诞生了,这个名字的来由是因为执行标准化的组织是Ecma国际.通常来说,术语“ECMAScript”和“JavaScript”指的是同一个东西.但如果把JavaScript看成是“Mozilla或其他组织的ECMAScript实现”,那么ECMAScript就是实现JavaScript所依据的标准.术语“ECMAScript”也用来描述语言版本(比如ECMAScript 5).

ECMA-262 / ECMAScript 5

Ecma国际 (一个标准化组织)创建了ECMA-262规范,这个规范就是ECMAScript语言的官方标准.如果有人提到ECMAScript 5,那么他指的就是ECMA-262规范的第五版,同时也是当前最新的正式规范.

Ecma第39号技术委员会 (TC39)

是一组开发ECMA-262标准规范的人(Brendan Eich和其他一些人).

ECMAScript的历史

  1. ECMAScript 3 (1999年12月)
    这是目前大部分浏览器都支持的ECMAScript版本.该版本引入了很多的新特性,这些特性已经成为该语言不可或缺的一部分:

  2. ECMAScript 4 (2008年7月被废弃)
    ECMAScript 4是作为下一代的JavaScript被开发的,同时有一个用ML写成的原型.但是,TC39委员会并不完全同意它的一些新特性.为了防止陷入僵局, 委员会在2008年7月底会晤,并产生了一项协议,协议内容总结为以下四点[2]:

    • 开发一个增量式更新的ECMAScript (后来成为了ECMAScript 5).
    • 开发一个重要的新版本规范,要比ECMAScript 4更先进,但会比ECMAScript 3之后的那个版本更新跨度更大.该版本的开发代号被定为Harmony,因为这场会议的的性质就是倡导我们要和谐发展.
    • ECMAScript 4中引入的一些特性将被丢弃:包,命名空间,早期绑定.
    • 其他的想法要在成为所有的TC39成员的共识下开发.
  3. ECMAScript 5 (2009年12月)
    此版本带来了一些标准库的增强,甚至通过引入严格模式更新了语言的语义.

  4. ECMAScript.next (计划于2013年)
    从问世以来,这个版本就显得有点太过雄心勃勃了,所以它的特性被分成了两组,第一组是那些将要成为ECMAScript 5下一个版本的特性.这一版本的开发代号称之为ECMAScript.next,并且很可能成为ECMAScript 6.第二组是Harmony特性,这些特性被认为是准备还不够充分或者重要程度还不够,所以不能进入ECMAScript.next.但仍然会进入某个更新的ECMAScript版本中,比如ECMAScript.next.next.当前的目标是在2013年完成ECMAScript.next,在此之前,浏览器(主要是火狐)要实现部分规范.

总结

ECMAScript和JavaScript的关系.ECMAScript是语言的规范.而JavaScript是规范的实现,Microsoft的JScript是另外一个实现

即将到来的ECMAScript版本:

  • ECMAScript.next是ECMAScript下一版规范的开发代号(code name).使用这个术语就意味着当前讨论的特性可能会也可能不会被加入最终的规范中.
  • ECMAScript 6是ECMAScript.next的实际(最终)名称.使用这个术语就意味着当前讨论的特性一定会被添加在最终的规范中.
  • ECMAScript Harmony是ECMAScript.next的超集,意味着“ECMAScript 5之后的新特性”.这些特性可能会被添加到ECMAScript.next中,也可能被添加到ECMAScript.next.next或者更新的版本中.

资料

【JAVASCRIPT】ECMAScrip (转)的更多相关文章

  1. 3、JavaScript

    1.    JavaScript简介 1.1. JavaScript由来 Netscape 发明了 JavaScript JavaScript由Netscape 在1995年发明.早期的主要目的是处理 ...

  2. 从零开始学JavaScript一(简介)

    概要:JavaScript的组成. 各个组成部分的作用 .   一.JavaScript是一种专为与网页交互而设计的脚本语言,它的的组成  Javascript  ECMAScript(核心) DOM ...

  3. JavaScript 核心

    我们首先来看一下对象[Object]的概念,这也是 ECMASript 中最基本的概念. 对象 Object ECMAScript 是一门高度抽象的面向对象(object-oriented)语言,用以 ...

  4. javascript浮点值运算舍入误差

    问题 在javascript中整数和浮点数都属于Number数据类型(简单数据类型中的一种),我们经常会发现在打印1.0这样的浮点数的结果是1而非1.0,这是由于保存浮点数的内存空间是保存整数值的两倍 ...

  5. JAVA企业级开发-JavaScript(02)

    一.JavaScript介绍 Javascript语言诞生主要是完成页面的数据验证.因此它运行在客户端,需要运行浏览器来解析执行JavaScript代码. 特点: 交互性(它可以做的就是信息的动态交互 ...

  6. javascript系列-Class1.JavaScript基础

    欢迎加入前端交流群来py:749539640 转载请标明出处!   JavaScript概述        一个页面分成三个部分,结构,样式,行为.               HTML代表了页面的结 ...

  7. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  8. javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈

    Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...

  9. Javascript 的执行环境(execution context)和作用域(scope)及垃圾回收

    执行环境有全局执行环境和函数执行环境之分,每次进入一个新执行环境,都会创建一个搜索变量和函数的作用域链.函数的局部环境不仅有权访问函数作用于中的变量,而且可以访问其外部环境,直到全局环境.全局执行环境 ...

随机推荐

  1. 【原创】Ajax的用法总结

    一.什么是Ajax Ajax英文全称为“ Asynchr JavsScript and XML”(异步的JavaScript和XML),是一种创建 交互式网页的开发技术. 二.Ajax技术的核心 Aj ...

  2. [bzoj4872]分手是祝愿

    Description Zeit und Raum trennen dich und mich. 时空将你我分开.B 君在玩一个游戏,这个游戏由 n 个灯和 n 个开关组成,给定这 n 个灯的初始状态 ...

  3. C#与Java对比学习

    Eclipse开发环境与VS开发环境的调试对比 数据类型.集合类.栈与队列.迭达.可变参数.枚举 类型判断.类与接口继承.代码规范与编码习惯.常量定义

  4. JS+PHP实现用户输入数字后取得最大的值并显示为第几个

    目的:分清JS PHP的区别,拓宽思维 分析 1.利用JS的prompt输入用户想要输入的值. 2.利用HTML表单的text标签将输入的值传递给PHP处理文件 3.PHP进行数值判定,选出最大值和位 ...

  5. [0] Visual studio 2010 快捷键大全

    [窗口快捷键]Ctrl+W,W: 浏览器窗口 Ctrl+W,S: 解决方案管理器 Ctrl+W,C: 类视图 Ctrl+W,E: 错误列表 Ctrl+W,O: 输出视图 trl+W,P: 属性窗口 C ...

  6. 东北育才 DAY2组合数取mod (comb)

    组合数取模(comb) [问题描述] 计算C(m,n)mod 9901的值 [输入格式] 从文件comb.in中输入数据. 输入的第一行包含两个整数,m和n [输出格式] 输出到文件comb.out中 ...

  7. docker在windows,centos中的安装

    centos安装方式,采用阿里云的镜像和安装脚本 或者到https://store.docker.com/search?type=edition&offering=community下载相应系 ...

  8. webpack3新特性介绍

    6月20号webpack推出了3.0版本,官方也发布了公告.根据公告介绍,webpack团队将未来版本的改动聚焦在社区提出的功能需求,同时将保持一个快速.稳定的发布节奏.本文主要依据公告内容,简单介绍 ...

  9. 常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全

    innerHTML:    设置或获取位于对象起始和结束标签内的 HTML scrollHeight: 获取对象的滚动高度. scrollLeft:   设置或获取位于对象左边界和窗口中目前可见内容的 ...

  10. mysql数据与Hadoop之间导入导出之Sqoop实例

    前面介绍了sqoop1.4.6的 如何将mysql数据导入Hadoop之Sqoop安装,下面就介绍两者间的数据互通的简单使用命令. 显示mysql数据库的信息,一般sqoop安装测试用 sqoop l ...