「javascript」出生就遇浏览器大战,亲爹还不爱,命运坎坷的JavaScript终于苦尽甘来( 六 )


完整的JavaScript实现
至此 , 完整的JavaScript实现包含三个部分:ECMAScript , 文档对象模型(DOM) , 浏览器对象模型(BOM) 。符合ECMA-262 3rd Edition标准的实现有:

  • Microsoft公司的JScript;
  • Mozilla的JavaScript-C , 后改名为SpiderMonkey;
  • Mozilla的Rhino;
  • Digital Mars公司的DMDScript;
  • Google公司的V8;
  • WebKit;
需要注意的是 , ECMAScript 只用来标准化 JavaScript 语言的基本语法 , 与部署环境相关的标准都由其他标准规定 , 比如 DOM 的标准就是由 W3C组织制定的 。
ECMA-262 标准后来也获得国际标准化组织 ISO的批准 , 并以标准号 ISO-16262命名 。
ECMAScript 步入正轨
1997年7月 , ECMAScript 1.0发布 , 这个版本做了些小改动:支持Unicode标准 , 对象与平台无关等 , 其他的特性与网景发布的JavaScript1.1并无二致;
1998年6月 , ECMAScript 2.0发布 , 这个版本主要做的是细节优化 , 没有新功能发布;
1999年12月 , ECMAScript 3.0版发布 , 这个版本对JavaScript标准做了大量的修改 。 修复了包括字符串处理、错误定义和数值输出等一系列问题 。 新增了对正则表达式、新控制语句、try-catch异常处理的支持 。 此时的ECMAScript才能算是一门真正的编程语言 。
2007年10月 , ECMAScript 4.0版草案发布 , 草案的标准跟第3版比起来 , 几乎是定义了一门新语言;因为草案不仅包含了强类型变量、新的数据结构和继承 , 还添加了JSON对象、继承的方法和高级属性定义 , 以及严格模式 。 由于改动过大 , 所以4.0草案发布后 , 遭到了Yahoo、Microsoft、Google等公司的反对 。
2008年7月 , 由于各方争执不下 , ECMAScript 4.0 的开发被终止 , ECMAScript 4.0中改动较少的一部分被拿出来 , 作为 ECMAScript 3.1开发 , 项目代号为Harmony , 而其他的改动较大的功能将会逐步推出 , 会后不久 , ECMAScript 3.1 改名为 ECMAScript 5;
2009年12月 , ECMAScript 5.0版 正式发布;Harmony 项目则一分为二 , 一些可行性较高的功能优先开发 , 后来成了 ECMAScript 6;而另一些不太成熟的设想 , 则会考虑放在ECMAScript 7中;
2011年6月 , ECMAScript 5.1版发布 , 并且成为 ISO 国际标准(ISO/IEC 16262:2011);
2012年底 , 所有的主流浏览器全面支持 ECMAScript 5.1;
2015年6月 , ECMAScript 6 正式发布 , 并且更名为“ECMAScript 2015” 。 同时 ,TC39 委员会也计划以后每年发布一个 ECMAScript 的版本;2016年发布的版本 , 称为“ECMAScript 2016” , 2017年发布“ECMAScript 2017” , 以后的版本以此类推 。
AJAXAjax这个词首先出现在《Ajax: A New Approach to Web Applications》一文中 , 该文的作者是Jesse James Garrett , 在该文中 , 将Ajax定义为了:Asynchronous JavaScrpt + XML的组合 , 代表并不是单一的技术 , 而是多种技术的组合 。
Ajax应用和普通应用的对比
该文的迅速流传使得Ajax被更多开发者认知、认可 , 并在1998年得到了广泛应用 。 Ajax允许客户端脚本发送HTTP请求动态加载局部的网页内容 , 实现网页的异步加载 , 也就意味着不必因为局部网页内容的修改而加载整个网页 , 从而能够带来更加友好的网页体验 。
Ajax的第一个组件由Outlook Web Access小组写成 , 被用于微软Exchange Server , 因此Outlook Web Access成了第一个应用了Ajax技术的商业应用程序 。
Ajax
2005年 , Google在它的很多应用中都使用了Ajax , 如Google讨论组、Google地图、Google搜索建议、Gmail等 。


推荐阅读