注:转载请注明出处
1.JavaScript最初诞生的原因,是网景公司(Netscape)为解决拨号上网时代(低带宽),服务端验证表单数据低效的问题,而着手开发一种客户端语言。但在其发展过程中,早已不再局限于简单的表单数据验证,而是具备了与浏览器窗口及其内容等几乎所有方面的交互能力,并成为了一门全面的编程语言。
2.最初网景公司把这种客户端语言命名为LiveScript,但为了搭上当时媒体热炒Java的顺风车,在发布前夕临时更名为JavaScript。
3.随着微软等竞争对手推出JScript等JavaScript的不同实现,导致JavaScript的语法和特性日益混乱,其标准化问题被提上日程。最终由欧洲计算机制造商协会(ECMA)以JavaScript1.1为蓝本,制定了【ECMA-262】标准,并由此标准定义了一种新脚本语言ECMAScript。随后,ISO也采用ECMAScript作为标准,各浏览器厂商便纷纷开始将ECMAScript作为各自JavaScript实现的基础。
4.ECMAScript并不等同于JavaScript,它只是JavaScript的核心标准(语法、类型、语句、关键字、保留字、操作符、对象),而JavaScript还包括文档对象模型(DOM)和浏览器对象模型(BOM)等。其中各主流浏览器对ECMAScript的支持都还不错,但对DOM的支持相差较大,对于BOM一直没有相关标准,期待HTML5的发布来为我们解惑。
5.到2008年的时候,所有主流浏览器均做到了与【ECMA-262】的兼容。
5.1【ECMA-262】共有5个版本(第4版未发布),各浏览器兼容的版本未必相同。
5.2所谓兼容:支持【ECMA-262】描述的所有“类型,值,对象,属性,函数以及程序语法和语义”,支持Unicode字符标准,以及对其进行适当的扩展。