“玩具语言”JavaScript的历史

344 阅读4分钟

嘿,宝子们我又来更新我的学习笔记了了了了,今天咱聊聊站在风口,低开高走,被历史选中的“玩具语言”——JavaScript!

JavaScript的诞生

"1994年,网景公司(Netscape)发布了Navigator浏览器0.9版。这是历史上第一个比较成熟的网络浏览器,轰动一时。但是,这个版本的浏览器只能用来浏览,不具备与访问者互动的能力。......网景公司急需一种网页脚本语言,使得浏览器可以与网页互动。 "

———Brendan Eich

1995年4月,网景公司录用34岁的系统程序员Brendan Eich,这个牛批小伙本来打算研究将Scheme语言作为网页脚本语言的可能性,这也网景公司招聘他的目的。

仅仅一个月之后,1995年5月,网景公司做出决策,未来的网页脚本语言必须"看上去与Java足够相似",但是比Java简单,使得非专业的网页作者也能很快上手。

Brendan临危受命,为了应付公司安排的任务,同时Brendan对Java一点不感兴趣,他只用10天时间就把Javascript设计出来了。Javascript语言实际上是两种语言风格的混合产物——(简化的)函数式编程+(简化的)面向对象编程。

哦shit,谁能知道这种语言未来会成为互联网第一大语言,全世界有几百万的学习者!

"与其说我爱Javascript,不如说我恨它。它是C语言和Self语言一夜情的产物。十八世纪英国文学家约翰逊博士说得好:'它的优秀之处并非原创,它的原创之处并不优秀。'(the part that is good is not original, and the part that is original is not good.)"

——Brendan Eich

浏览器大战

随着1996年IE3发布,支持JSscript(微软实现的JS),浏览器大战开始了,此时每家浏览器的脚本都不太一样。

在这过程中,微软的IE浏览器由于捆绑进了Windows,很快超越,1998年网景浏览器节节败退,公司内忧外患。

同年,网景破釜沉舟,将浏览器开源(Firefox),但市场并没有因为开源而对网景重新青睐。年底,美国在线AOL宣布收购网景,2-3年后网景公司被成功收购,网景团队的程序员被纷纷解聘,之后Brendan一直协助维护Firefox的运营。

2001年-2010年间IE6如日中天,同时由于盗版WindowsXP在中国的风行,很多年里IE6始终占据中国浏览器市场,这十几年就是前端开发者的噩梦。

Chrome横空出世

由于IE6的巨大成功,微软认为花精力不值得,直接解散了IE6开发团队。但Firefox的出现,让微软重新组建团队,但已经不是原来的IE6团队,导致后续发布的IE7/8一直问题不断。

此时谷歌抓住机会,2004年,谷歌雇佣一些Firefox和IE开发者。2008年,Chrome问世,迅速拿下1%份额。2011年,Chrome份额超过Firefox。2016年,Chrome占全球份额的52%。

转折点

2010年,iPhone4发布表示不支持IE,

2016年,淘宝天猫表示不再支持IE6/7,同年年底宣布不再支持IE8。

移动市场的兴起让中国前端摆脱了IE十年的恐怖支配。从此前端极速发展。

ECMAScript标准的制定

1997年6月 第一版ECMAScript标准发布

1999年12月 第三版标准发布,这也是使用最广的

第四版流产

2009年,第四版发布,增加了一些功能

2015年6月 第五版发布,新浏览器都支持这一版

之后每一年发布一版,版本号以年份命名

JS与ECMAScript标准的关系

ECMAScript是纸上的标准,JS是浏览器的实现

JS纸上标准落后于实现,先实现,再写进标准

JavaScript的兴起

2004年愚人节,谷歌发布Gmail在线网页,当时人们认为网页只能看新闻和图片,Gmail让人们眼前一亮。

2005年,Jesse将谷歌用到的技术命名为Ajax,从此前端技术正式出道。

JavaScript的爆发

2009年Ryun基于Chrome的JS引擎V8创建了Node.JS。2010年,Isaac基于Node.JS创建了npm。前端工程师可以在浏览器之外执行JS了,Node.JS火了。同年,TJ发布Express.jS,从此前端工程师可以愉快写后端应用了。

在这期间出来技术太多,如现在主流的webpack,Vue,React,Angular... 很多还没认识就已经过时了,后面有机会再做介绍。

总结:JS备胎逆袭

一开始,浏览器支持的很多:Java,flash,VBScript... 只有JS活下来了