ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,但实际上后两者是ECMA-262标准的扩展。
目录 |
1995年12月升阳公司与网景通讯公司一起引入了JavaScript。1996年3月,网景通讯公司发表了支持JavaScript的网景导航者2.0。由于JavaScript作为网页的客户面脚本语言非常成功,微软于1996年8月引入了Internet Explorer3.0,这个软件支持一个“约”与JavaScript相容的JScript。
1996年11月网景通讯公司将JavaScript提交给欧洲计算机制造商协会进行标准化。ECMA-262的第一个版本于1997年6月被欧洲计算机制造商协会采纳。
ECMAScript是由ECMA-262标准化的脚本语言的名称。JavaScript和JScript与ECMAScript相容,但包含超出ECMAScript的功能。
至今为止有三个ECMA-262版本发表,第四版正在工作中。
| 版本 | 发表日期 | 与前版本的差异 |
|---|---|---|
| 1 | 1997年6月 | 首版 |
| 2 | 1998年6月 | 格式修正,以使得其形式与ISO/IEC16262国际标准一致 |
| 3 | 1999年12月 | 强大的正则表达式,更好的文字链处理,新的控制指令,异常处理,错误定义更加明确,数据输出的格式化及其它改变 |
| 4 | 正在工作中 | 可能更明确的类的定义,命名空间等等 |
2004年6月欧洲计算机制造商协会发表了ECMA-357标准,它是ECMAScript的一个扩延,它也被称为E4X(ECMAScript for XML)。
许多程序,尤其是网页浏览器支持ECMAScript。ECMAScript还添加了与文档对象模型的接口来改变文件。
| 程序 | 方言 | 最新版本 | 相应ECMAScript版本 |
|---|---|---|---|
| 基于Gecko的浏览器 | JavaScript | 1.7 | ECMA-262,第三版1 |
| Internet Explorer | JScript | 5.7 | ECMA-262,第三版 |
| Opera | ECMAScript附带JavaScript和JScript的扩展 | ? | ECMA-262,第三版 |
| 基于KHTML的浏览器 | JavaScript | ? | ECMA-262 |
| 微软.NET(ASP.NET) | JScript .NET | 8.0 | ECMA-262,第三版2 |
| Macromedia Flash | ActionScript | 3 | ECMA-262,第三版3 |
| Adobe Acrobat | JavaScript | 1.5 | ECMA-262,第三版 |
| 其它ECMA程序 | DMDScript | 1.06 | ECMA-262 |
| OpenLaszlo平台 | JavaScript | 1.4 | ECMA-262,第三版4 |
| iCab | InScript | 3.22 | ECMA-262,第三版 |
Note (1):Mozilla(1.8 Betas)和Firefox 2.0部分支持E4X[1]和少数其它功能New in JavaScript 1.7
Note (2):微软称JScript8.0“支持ECMAScript3.0几乎所有功能”,但是没有列出哪些功能不支持
Note (3): ActionScript 2除支持ECMA-262 3.0外还支持早期向4.0提出的功能的建议
Note (4):OpenLaszlo声明部分支持第三版[2]
第三者往往使用Mozilla的实现。
苹果电脑的Safari使用基于KDEKJS库的JavaScriptCore。
| JavaScript | JScript | ECMAScript |
|---|---|---|
| 1.0(Netscape 2.0,1996年3月) | 1.0(IE 3.0-早期版本,1996年8月) | |
| 1.1(Netscape 3.0,1996年8月) | 2.0(IE 3.0-后期版本,1997年1月) | |
| 1.2(Netscape 4.0,1997年6月) | ||
| 1.3(Netscape 4.5,1998年10月) | 3.0(IE 4.0,1997年10月) | 第一版(1997年6月)/第二版(1998年6月) |
| 1.4(只使用于网景服务器) | 4.0(Visual Studio 6,没有IE版本) | |
| 5.0(IE 5.0,1999年3月) | ||
| 5.1(IE 5.01) | ||
| 1.5(Netscape 6.0,2000年11月以及此后网景和Mozilla版本) | 5.5(IE 5.5,2000年7月) | 第三版(1999年12月) |
| 5.6(IE 6.0,2001年10月) | ||
| 1.6(Gecko 1.8、Firefox 1.5,2005年秋) | 第三版,加上一些改进 | |
| JScript .NET(ASP.NET,没有新的IE版本) | (据说有其它ECMA成员参加JScript .NET的设计) | |
| JavaScript 2.0(proposal) | 第四版(正在工作中) |
|
查 • 论 • 编 • 历
|
|
|---|---|
| 工业编程语言 | A+ - ActionScript - Ada - 汇编语言 - B - Brainfuck - COBOL - Curl - D - Eiffel - Erlang - FORTRAN - IronPython - Java - JavaScript - JScript - Jython - LISP - Lua - SCILAB - MATLAB - MATHEMATICA - Nuva - Oberon - OCaml - Perl - PHP - PostScript - Powerbuilder - Python - R - REXX - Ruby - Self - Smalltalk - Tcl/Tk - C# - F# - J# - Microsoft Visual C# |
| C/C++语言 | C - C++ - Turbo C++ - Borland C++ - C++ Builder- C++/CLI - Objective-C - Microsoft Visual C++ |
| BASIC语言 | BASIC - BASICA - GW-BASIC - QBASIC - QuickBASIC - True BASIC - Turbo BASIC - PowerBASIC - DarkBASIC -ETBASIC Visual Basic .NET - Visual Basic - VBScript - VBA |
| Pascal/Delphi语言 | Pascal语法:(Pascal - Turbo Pascal - Object Pascal - Free Pascal) Pascal+Delphi语法:(Delphi) |
| GPU用着色器语言 | Cg - GLSL - HLSL |
| 学术编程语言 | APL/J - Clean - Haskell - Logo - ML - Prolog - Scheme - SAC |
| 数据库相关编程语言 | Clipper - Visual FoxPro - SQL - SQL預存程序 |
| 其他编程语言 | ALGOL - Forth - Modula-2/Modula-3 - MUMPS - PL/I - Simula |
|
查 • 论 • 编 • 历
|
|
|---|---|
| 文档呈现语言 | HTML* - XHTML* - XML* - XForms* - DHTML* |
| 样式格式描述语言 | CSS* - XSL* |
| 动态网页技术 | CGI - ASP - ASP.NET - ColdFusion - JSP - PHP - Ruby on Rails |
| 客户端交互技术 | ActiveX - Java Applet - Flash - Flex - AJAX - XMLHTTP* AIR- Silverlight - JavaFX |
| 客户端脚本语言 | JavaScript - JScript - VBScript - ECMAScript - ActionScript |
| 标识定位语言 | URL - URI - XPath |
| 文档纲要语言 | DTD* - XML Schema* |
| *由W3C制定和维护的标准与规范 | |
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History