1. JavaScript的诞生
JavaScript,简称JS(以下均用JS代替)。JS之父是美国的Brendan Eich(中文翻译:布兰登·艾克,以下简称布兰登)发明的。在1995年,html和css刚被发明后不久,布兰登被只靠一款浏览器(Netscape Navigator)发家的网景公司雇佣为其浏览器开发一些附加功能,JS随即诞生。JavaScript脚本名字的由来是被要求要蹭Java的热度,当时sun公司将Oak语言改名为Java,正式向市场推出并大肆宣传。当时的网景公司就和Java的母公司合作,并要求布兰登开发的浏览器脚本的名字要和Java有关,因此才叫JavaScript。但实际上,二者除了一开始命名有合作外,两种脚本语言上没有任何关系,JS是一个全新的脚本语言。因为两个公司有合作,因此浏览器一开始是同时支持Java和JavaScript语言的,只是使用Java要安装插件,后来Java被从浏览器端淘汰,浏览器前端就只留下了JavaScript。
2. ES标准的诞生
一开始的时候JS只是网景公司浏览器的一个附加功能,而且是JS之父布兰登在时间紧、任务重、自己也不想好好搞的情况下创造的,并未申请成为一个脚本语言标准,但随着JS的用户体验越来越好,每家浏览器公司就开始各种开发JS的山寨版本,因此每家浏览器的JS脚本都不太一样,网景公司一看这种情况得要立马维权啊,毕竟JS是它公司首创的,因此网景公司便立马向ECMA(欧洲计算机制造联合会)提交JS语言标准,由于不能和Java语言标准命名冲突,不能叫JavaScript标准,故改叫ECMAScript标准,从此JS就成了一个脚本和标准命名不一样的编程语言。因此我们常听到的ES6就是ECMAScript6,是JavaScript语言标准的第六版本。也就是说,JS在才是个没有好好搞的初始版本的情况下就被写入了标准,因此存在着很多的问题,在后续会慢慢暴露出来。
JS与ES的主要区别是,JS是在浏览器上具体实现的语言,ES是JS完整实现后总结规定的语法标准,也就是说,一般是先用JS具体开发实现某些功能,然后总结写成标准的,JS发展先于ES,但JS语法要遵循ES标准。
后来网景公司死了,其旗下的网景浏览器涅磐重生,改造成firefox火狐浏览器,由JS之父布兰登参与联合创建的Mozilla基金会维护。
3. ES标准的发展
ECMAScript标准,简称ES标准,在其发展历程中,使用范围最广的版本是在1999年12月发布的第三版,ES3,并且这个版本ie6是支持的。然后其第四版因为增加的功能太多,而且是在ie6如日中天的统治时期,未能成功问世,直接跳到了在2009年12月发布的第五版,ES5。再到2015年6月发布的第六版,ES6,大多数最新的浏览器都支持。自ES6开始,ES标准每年更新一个版本,并以当年的年号命名。如2017年是ES8或者说是ES2017。
4. JS的自我证明
自从JS申请了ES标准后,其要想在浏览器功能中占据一席之地,得拿出来相比于基于html和css的网页,除了速度快之外的特征性优势。那就是谷歌Gmail在线邮件系统网页的出现,让开发者眼前一亮,因为早期人们只认为网页只能看新闻、图片等,使用某个应用软件必须要下载,但Gmail是一个在线的应用,不需下载,直接在线登录邮箱使用。且JS相比于在浏览器上运行的其他技术来说,更能支持移动端的运行,这使得JS的优势逐渐突出,逐渐得到发展。
5. JS的爆发式发展
2009年,Ryan基于JS引擎V8开发了node.js,在随后的一年,即2010年,Isaac基于node.js开发了npm。然后两人进行合作,将npm嵌入node.js,也就是我们目前安装node.js就自动带有npm,组合出强大的功能。使得前端工程师可以在浏览器之外运行JS了,也就是说可以用node.js做http-server,可以做后端开发。再后来,TJ发布了Express.js框架,使得node.js火起来。从2010年开始,各种前端技术框架大爆发,快速更替发展。直到目前仍存活且流行的有React、Vue、Angular等。node.js引导前端变成全栈开发,也就是说node.js拓宽了JS的发展之路,使得JS爆发式发展。
6. JS的发展趋势
一开始的时候,浏览器不只是支持JS脚本语言,也支持Java、Flash、VBScript等脚本语言,但最后只有JS语言在浏览器上存活下来,并且一直在发展。在2015年发布的ES6之前的JS语言确实有些混乱,相比于其他语言来说JS并不是一个很好的语言,毕竟其在一开始被开发的时候时间短任务重,创建者也没好好搞,就被推着火了。但是在2015的ES6版本后,随着node.js技术的发展,JS发展空间更大了,发展前景也很大。
7. 参考和推荐
发展史来源于维基百科和其他JS历史参考,以下推荐阮一峰大佬写的比较好全面的历史介绍: