JavaScript由来概览

170 阅读3分钟

何谓JavaScript

JavaScript(通常缩写为JS)是一种高级的、解释型的编程语言。它被世界上的绝大多数网站所使用,也被世界上的主流浏览器所支持,例如Chrome、IE、Opera等等。

JavaScript的历史始于网景

1995年,网景招募了布兰登·艾克,目标是把Scheme语言作为网页脚本嵌入到Netscape Navigator浏览器(这是历史上第一个比较成熟的浏览器)当中。但更早之前,网景已经跟Sun公司合作在浏览器中支持Java,甚至还考虑直接将Java作为脚本语言嵌入网页,只是因为这样会使HTML网页过于复杂,后来才不得不放弃。后来网景决定发明一种与Java搭配使用的辅助脚本语言,并且要求语法上有些类似,这个决策排除了如Perl、Python、Tcl或Scheme等语言。于是艾克在1995年5月,为了应付公司安排的任务,仅花了十天时间,把原型设计出来了(这也为JavaScript的未来留下隐患)。

与微软的竞争

微软公司于1995年推出了IE浏览器,并且在windows系统上预装,从而引发了与Netscape的浏览器大战。微软又对Netscape Navigator解释器进行了逆向工程,创建了JScript,以便与网景的产品竞争。

标准化

1996年11月,网景正式向ECMA(欧洲计算机制造商协会)提交语言标准的申请。1997年6月,ECMA以JavaScript语言为基础制定了ECMAScript标准规范ECMA-262。

JavaScript缺陷

产生原因

1.过于仓促的设计阶段

因为布兰登·艾克只是为了应付工作,也并不愿意按照java的样子设计。而且这种语言的设计初衷,是为了解决一些简单的网页互动,所以开发者对这一语言的开发并不上心。

2.没有先例

Javascript同时结合了函数式编程和面向对象编程的特点,设计思路里也借鉴了多种语言的特征,这使得它没有设计先例可以参考。

3.过早的标准化

1996年11月,为了压制微软的JScript,网景公司决定申请Javascript的国际标准。而JavaScript在刚刚上市,用户数量便是爆炸性的增长,不仅缺乏积累用户的过程,也使语言调整变得困难重重。因此,Javascript的规格还没来及调整,就固化了。

JavaScript的缺陷

1.不适合大型程序的开发

2.提供的标准函数库很小

3.null的设计不合理

4.全局变量难以控制

5.自动插入行尾分号

6.加号运算符的双重含义

7.Nah的奇怪特性

8.数组和对象的区分十分麻烦

9.==的判断不符合直觉

10.基本数据类型对应的对象类型易造成混淆。

*但是配合了第三方函数库,这些缺陷大部分都能回避