部分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. 面向对象的SOLID原则白话篇

    面向对象的SOLID原则 简介 缩写 全称 中文 S The Single Responsibility Principle 单一责任原则 O The Open Closed Principle 开放 ...

  2. angular路由最基本的实例---简单易懂

    <!DOCTYPE html> <html lang="en" ng-app="myapp"> <head> <met ...

  3. Jenkins插件开发

    一.环境配置 不赘述,直接看wiki:https://wiki.jenkins.io/display/JENKINS/Extend+Jenkins 二.内容说明 1.插件代码结构 src/main/j ...

  4. select change事件给其它元素赋值,本select的value或tex

    select change事件给其它元素赋值,本select的value或textonchange='$("#areaname").val($("option:selec ...

  5. Struts2 Action接收POST请求JSON数据及其实现解析

    一.认识JSON JSON是一种轻量级.基于文本.与语言无关的数据交换格式,可以用文本格式的形式来存储或表示结构化的数据. 二.POST请求与Content-Type: application/jso ...

  6. root权限下找不到 /root/.ssh目录

    Xshell配置ssh登陆远程服务器,找不到 root/.ssh目录,报错信息如下: root@ubuntu:/home/xinxin# cd /root/.ssh/bash: cd: /root/. ...

  7. 【Android Developers Training】 61. 序言:使用OpenGL ES显示图像

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  8. Python读入CIFAR-10数据库

    CIFAR-10可以去http://www.cs.toronto.edu/~kriz/cifar.html下载(记得下载python格式) CIFAR-10数据组成: 训练集和测试集分别有50000和 ...

  9. IBM Security AppScan Standard 用外部设备录制脚本(手机端应用、app、微信等)进行安全测试

    一.打开AppScan,选择外部设备/客户机,点击下一步 二.记录代理设置,可以手动输入需要的端口号,也可以自动选择,记住端口号以及PC电脑的ip地址,手机端如何设置对应的端口跟ip可以参考 Jmet ...

  10. Apollo框架试玩

    2017年7月5日,百度举行了AI开发者大会,在会上发布了Apollo项目,并进行了演示,该项目在Github上已经能够被访问.出于一个程序员的好奇,昨天试玩了一把,确实不错. http://apol ...