JavaScript的诞生

发明 JavaScript (通常缩写JS)的人叫—->布兰登.艾克。

发布时间为1995年12月4日,据说只花十天的时间写出来的语言。

听上去很厉害,然而,是个人都会有局限的,虽然是花了十天写出来的 JS 语言,但由于时间过于仓促,导致 JS 语言设计不严谨且没有时间完善细节,直到现在 JS 语言仍然有一些缺陷让开发者饱受诟病!

  • 那么,是什么原因让开发者为什么要花这么短的时间发明了 JavaScript ?
  • 为什么要发明 JavaScript ?
  • JavaScript 设计初衷是做什么的?

这就不得不提到 Firefox 的前身 Navigator浏览器 了!

网景公司在1994年发布了 Navigator浏览器0.9版 。这是十分古老的浏览器,是历史上第一个十分成熟的网络浏览器(现在已经挂了,内核开源成为了现在的 Firefox浏览器 )。但是这个版本只能用来浏览,不具备用户与页面相互交互的能力,所以当时的网景公司需要一种可以让页面与用户交互的脚本语言!

1995年布兰登入职网景公司,临危受命,需要在最短的时间内做出这样的脚本语言,并内嵌到Navigator浏览器当中。

最初 JavaScript 并不叫 JavaScript,在之前是叫 Mocha ,到了1995年9月Netscape Navigator 2.0的Beta版中改名为LiveScript ,直到同年的12月在浏览器的2.0 Beta版本中改名为 JavaScript。

问题来了,Java 和 JavaScript 到底是什么关系?

在当时Java的热度如日中天,几乎没有人不知道Java。于是在网景公司在做出成品的时候就给语言起名叫LiveScript语言,想要蹭Java的热度!
到后来有人觉得LiverScript这个名字不够“java”,直接简单粗暴改名为“JavaScript”!
没错,JavaScript和Java的关系就好像是“老婆饼”和“老婆”,“雷锋”和“雷锋塔”一样,只是名词上相似罢了,这两种事物完全没有任何关系。

JavaScript的竞争对手

在JavaScript推出的时候就大获成功,其他的公司看着,心里头就开始痒了起来,也想要模仿网景公司一样发明类似这样的语言,其中最大的便是微软!

微软之后很快的在IE3推出JScript (是的,又是蹭热度的),与网景的JavaScript同台竞争!

微软在推出JScprit之后,紧接着在这基础上添加只有在IE才可以的专属对象,使许多网页在非IE浏览器无法正常显示!在这几年的浏览器大战十分混乱,加上当时没有标准统一,使网页设计者十分痛苦!阻碍了在当时JavaScript普及使用。

JavaScript标准化

微软的IE浏览器很快占领了大半市场份额,网景公司眼看着自己快要被打败,实在是没有办法,便选择了对以后的前端开发影响巨大的选择———->时间1996年11月,网景正式向ECMA(欧洲计算机制造商协会)提交语言标准!于是,ECMA为JavaScript语言为基础制定ECMAScript标准规范ECMA-262。

网景的结局

虽然把JavaScript标准化了,但是依旧没有什么用。因为微软的IE浏览器捆绑进了windows,便迅速超越了网景。后期网景在内忧外患的情况下,便把希望给予浏览器开源(Firefox)。但最终,依旧没起到什么作用。到了最后,被收购了。

好消息是,虽然母公司已经死了,但开源的浏览器并没有死,布兰登在之后就开始协助维护Firefox的运营。

JavaScript的版本

JavaScript的第一个版本ECMAScript在1997年6月发布。之后,在1999年12月,第三版发布,该版本因为IE6也支持,成了最广泛的ECMAScript版本。

奇怪的是,第四版没有!第四版流产了!

原因是在当时,IE6浏览器大当其道,JavaScript在第四版的提议中添加了许许多多的新功能,还十分好用。不过其他人认为,第四版更新太过激进,怕其他的浏览器接受不了,便直接驳回!

之后的10年(2009年12月)才更新了ECMAScript第五版本。此期间因为IE浏览器的自大,被谷歌抓住机会,推出了Chrome浏览器超越了IE浏览器。

2015年6月第六版发布,最新的浏览器都会支持这一版本,在之后每发布一版,版本号都会以年份命名,如2015年发布的ECMAScript的版本号叫ES2015(ES6)。据说,ES6的一些新特性就是当年的第四版本,但谁知道呢?

JavaScript和ECMAScript是什么关系?

JavaScript就是ECMAScript 和 DOM 和 BOM 的集合!

且ECMAScript只是纸上的标准,JS是浏览器的实现。要先在浏览器实现相关的特性,如果觉得该特性不错,就会写进标准。所以标准往往落后于浏览器。

JavaScript的兴起

在当时,人们对于网页,认为用处只有看新闻和图片。

在2004年,谷歌就发布杀手级的应用——->Gmail,这一下子就刷新了用户们的认知。紧接着到了2005年,谷歌将用到的技术命名为AJAX,从此前端技术正式出现。

到了2009年,Ryan基于V8创建Node.js。

之后又过一年,Isaac基于Node.js写出了npm。就这样,前端工程师可以在浏览器之外的地方运行JS了。同年,TJ受到了Sinatra的启发,发布了Express.js,就这样,前端工程师可以写后端应用了。