002_JavaScript的历史

1. 为了发挥JavaScript的全部潜力, 了解它的本质、历史及局限性是十分重要的。

2. Nombas和ScriptEase

2.1. 大概在1992年, 一家称作Nombas的公司开发了一种叫做C减减(C-minus-minus, 简称Cmm)的嵌入式脚本语言。Cmm背后的理念很简单: 一个足够强大可以替代宏操作(macro)的脚本语言, 同时保持与C(和C ++)足够的相似性, 以便开发人员能很快学会。这个脚本语言捆绑在一个叫做CEnvi的共享软件中, 它首次向开发人员展示了这种语言的威力。

2.2. Nombas最终把Cmm的名字改成了ScriptEase, 原因是后面的部分(mm)听起来过于消极, 同时字母C"令人害怕"。

3. Netscape发明了JavaScript

3.1. 当Netscape Navigator崭露头角时, Nombas开发了一个可以嵌入网页中的CEnvi的版本。这些早期的试验被称为Espresso Page(浓咖啡般的页面), 它们代表了第一个在万维网上使用的客户端语言。而Nombas 丝毫没有料到它的理念将会成为万维网的一块重要基石。

3.2. 当网上冲浪越来越流行时, 对于开发客户端脚本的需求也逐渐增大。此时, 大部分因特网用户还仅仅通过28.8kbit/s 的调制解调器连接到网络, 即便这时网页已经不断地变得更大和更复杂。而更加加剧用户痛苦的是, 仅仅为了简单的表单有效性验证, 就要与服务器进行多次地往返交互。设想一下, 用户填完一个表单, 点击提交按钮, 等待了30秒的处理后, 看到的却是一条告诉你忘记填写一个必要的字段。

3.3. 那时正处于技术革新最前沿的Netscape, 开始认真考虑开发一种客户端脚本语言来进行简单的问题处理。

3.4. 当时工作于Netscape的Brendan Eich, 开始着手为即将在1995年发行的Netscape Navigator 2.0开发一个称之为LiveScript的脚本语言, 当时的目的是在浏览器和服务器(本来要叫它LiveWire)端使用它。Netscape与 Sun及时完成LiveScript实现。

3.5. 就在Netscape Navigator 2.0即将正式发布前, Netscape将其更名为JavaScript, 目的是为了利用Java这个因特网时髦词汇。Netscape的赌注最终得到回报, JavaScript从此变成了因特网的必备组件。

4. 三足鼎立

4.1. 因为JavaScript 1.0如此成功, Netscape在Netscape Navigator 3.0中发布了1.1版。恰巧那个时候, 微软决定进军浏览器, 发布了IE 3.0并搭载了一个JavaScript的克隆版, 叫做JScript(这样命名是为了避免与 Netscape潜在的许可纠纷)。

4.2. 在微软进入后, 有3种不同的JavaScript版本同时存在: Netscape Navigator 3.0中的JavaScript、IE中的JScript以及CEnvi中的ScriptEase。与C和其他编程语言不同的是, JavaScript 并没有一个标准来统一其语法或特性, 而这3种不同的版本恰恰突出了这个问题。随着业界担心的增加, 这个语言的标准化显然已经势在必行。

5. 标准化

5.1. 1997年, JavaScript 1.1作为一个草案提交给欧洲计算机制造商协会(ECMA)。第39技术委员会(TC39)被委派来"标准化一个通用、跨平台、中立于厂商的脚本语言的语法和语义"。由来自Netscape、Sun、微软、Borland 和其他一些对脚本编程感兴趣的公司的程序员组成的TC39锤炼出了ECMA-262, 该标准定义了名为ECMAScript 的全新脚本语言。

5.2. 在接下来的几年里, 国际标准化组织及国际电工委员会(ISO/IEC)也采纳ECMAScript作为标准(ISO/IEC-16262)。从此, Web浏览器就开始努力将ECMAScript作为JavaScript实现的基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值