真正从零开始学应用开发,现在订阅即刻在线学习。 立即订阅

小白兔的开发之路 #5:JavaScript 的一点历史

互联网刚刚开始地时候,网页都是静态的,上面只能展示一些文字啊,图片之类的。后来有人就琢磨,能不能在网页上边儿加点交互功能,开始有人考虑在网页上用 Java 这种语言,因为在当时 Java 这种语言特别火。

但是马上就发现这个想法不大行,在当时有一款浏览器叫 Netscape,基本上占领了 90% 以上的市场份额,这个公司发现用 Java 行不通以后,就决定要自个儿再造一门新的语言,用在这个网页上。

于是他们就又招了一个人儿,这个人呢,只花了 10 天的时间,就写出了第一个版本的 JavaScript。不过在当时的时候不叫这个名字,叫 Mocha 。

在 1995 年的时候,这个 Netscape 发布了它的第二个版本的浏览器,在这款浏览器里边就开始支持他们自己造的这种语言了,发布的时候就把之前的 Mocha 改了个名字,叫 LiveScript。又过了几个月以后,又把这个 LiveScript 这个名字,换成了现在的 JavaScript。

改成这个名字,主要就是想蹭点热度,因为当时 Java 是非常非常热的一门开发语言。其实它俩没啥关系,不过 JavaScript 当初确实是借鉴了很多语言的一些特点。

自那以后,JavaScript 就彻底改变了网页上的用户界面的使用体验。

那时候还有一个公司,叫 Microsoft ,就是微软,这个公司现在还在,而且也非常厉害。他们在当时啊,也弄出了一个浏览器,叫 Internet Explorer,就是 IE。这款浏览器啊,在以后的很长一段时间,都是开发者的噩梦。

但不管怎么说,IE 最终还是抢走了 Netscape 占的那个 90% 的市场份额。

当时呢,微软逆向工程了 JavaScript 这种语言,自己重新起了一个名字,叫 JScript,这时候是 1996 年。也就是当时市场上同时有两种差不多的语言,一个是 JavaScript,还有一个是 JScript。

后来大家觉得说,继续这么搞下去不行了,得有一个标准,规范一下这种在浏览器上边的语言。然后 Netscape 就联系一个在欧洲的一个叫 ECMA 的组织。就是 European Computer Manufacturer's Association,这个组织主要就是制定 IT 行业相关的一些标准。EcmaScript,就是这个组织,给 JavaScript 这种语言制作的一套标准。EcmaScript 的简称是 ES,JavaScript 的简称可以是 JS 。

我觉得应该就是 Netscape 一看,打不过 IE,就想跑到上游去制定标准去了。但是呢,当时微软根本不鸟这套标准,你标你的,我做我的。因为 IE 在当时已经占了 90% 以上的市场份额了。

标准就是一种规范,或者格式,英文叫 Specification,实际上就是一些文字。对于开发语言来说,标准就是把这种语言的一些特性,写法,功能等等吧,这些东西写清楚了,写明白了,大家可以按照这套标准去实施这种语言。

大家都知道在这个浏览器里边儿,都有这么一个处理 JavaScript 语言的引擎,在制造这个引擎的时候,就会参照 EcmaScript 这套标准去做。但是吧,在实施的时候可能会存在一些差异,比如已经在标准里面的一些特性,在浏览器的引擎里可能还不能处理,因为这个引擎很可能还没有实施这个新的特性。

这个 EcmaScript 有很多版本,你也可以把它想成是 JavaScript 语言的版本,以前这个版本号是用数字表示的,比如 ECMAScript 5,ECMAScript 6,就是 ES5,ES6。后来又改成用年份来表示这个版本了,比如之前的 ES6 对应的是 ES2015,以后你可能还会看到 ES2020,ES2021 之类的。

新版本儿的标准里边都会介绍一些新的特性,但是作为开发者,这些新的特性你可能不能马上就用在自己开发的应用里面,因为很可能浏览器里的 JavaScript 引擎还没有实施这些新的特性,所以你得等着。

后来可能有些开发者等不及了,他们就发明了一些工具,比如 Babel,还有 TypeScript。有了这些工具,我们就可以在应用里使用在标准里介绍的这些新的写法,新的功能。写完以后,这些工具可以把这些新的写法转换成老版本的写法。最终运行的就是编译之后的代码。



微信好友

用微信扫描二维码,
加我好友。



微信公众号

用微信扫描二维码,
订阅宁皓网公众号。



240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

12400
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点