ECMA script 介绍
访问量: 3155
昨天是tishadow 的作者 dbankier 介绍的 JAST 框架中用到.
大概看了一下,
这是 现代浏览器脚本语言的基础. jscript, ActionScript 和 javascript 都是它的父类集合.
不同的公司 也都在自己的浏览器中对它进行了实现.
甚至在 KDE 等桌面程序中也对它有实现. (见尾部表格)
阮一峰 已经出版了这本书的中文版, 是他自己原创. 他是我认为非常有学术气息的人, 极其客观, 翻译水平很高. 推荐大家去看.
地址: http://www.ruanyifeng.com/blog/2014/04/ecmascript_6_primer.html
摘抄一段 阮一峰的介绍:
ECMAScript和JavaScript的关系
ECMAScript是JavaScript语言的国际标准,JavaScript是ECMAScript的实现。
1996年11月,JavaScript的创造者Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这种语言能够成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript。这个版本就是ECMAScript 1.0版。
之所以不叫JavaScript,有两个原因。一是商标,Java是Sun公司的商标,根据授权协议,只有Netscape公司可以合法地使用JavaScript这个名字,且JavaScript本身也已经被Netscape公司注册为商标。二是想体现这门语言的制定者是ECMA,不是Netscape,这样有利于保证这门语言的开放性和中立性。因此,ECMAScript和JavaScript的关系是,前者是后者的规格,后者是前者的一种实现。在日常场合,这两个词是可以互换的。
p.s. 这里有具体的表格:
Application-implementation | Implementation and latest version | ECMAScript edition |
---|---|---|
Mozilla Firefox, the Gecko layout engine, SpiderMonkey, and Rhino [d 1] | JavaScript 1.8.5[d 2] | ECMA-262, edition 5, and features from upcoming 6. [d 3] |
Google Chrome, the V8 engine | JavaScript[d 2] | ECMA-262, edition 5[d 4] [d 5] |
Apple's Safari, the Nitro engine | JavaScript[d 2] | ECMA-262, edition 5.1 |
Internet Explorer, the Trident layout engine | JScript 9.0 | ECMA-262, edition 5 |
Java | Nashorn 1.8.0[d 6] | ECMA-262, edition 5.1[d 7] |
Opera | ECMAScript[d 8] | ECMA-262, edition 5[d 9] |
RemObjects Script for .NET | ECMAScript | ECMA-262, edition 5 |
KHTML layout engine, KDE's Konqueror | JavaScript[d 2] | ECMA-262, edition 5.1[d 10] and features from upcoming 6. [d 11] |
Appweb Web Server, Samba 4 | Ejscript 0.9.9 | ECMA-262, edition 3[d 12] |
Microsoft .NET Framework | JScript .NET 8.0 | ECMA-262, edition 3[d 13] |
Adobe Flash and Adobe Flex | ActionScript 3 | ECMA-262, edition 3[d 14] |
Adobe Acrobat | JavaScript 1.7[d 15] | ECMA-262, edition 3 |
Adobe Creative Suite products: InDesign, Illustrator, |
ExtendScript | ECMA-262, edition 3[citation needed ] |
General purpose scripting language | DMDScript 1.15 | ECMA-262 |
OpenLaszlo | JavaScript[d 16] | ECMA-262, edition 3[d 17] |
CriScript, JScript for game platforms | CriScript 0.91.0 | ECMA-262, edition 3 |
iCab | InScript 3.22 (abandoned) | ECMA-262, edition 3 |
Max/MSP | JavaScript 1.5[d 2] | ECMA-262, edition 3 |
ANT Galio 3 | JavaScript 1.5[d 2] [d 18] | ECMA-262, edition 3 |
KDE | QtScript | ECMA-262, edition 3 |
Caja | ECMA-262, edition 3[d 19] | |
Objective-J | ECMA-262, edition 3 | |
WMLScript | ECMA-262, edition 3 | |
Compiler-generated JavaScript applications | TypeScript [25] | ECMA-262, edition 3, 5 and features from upcoming 6. |