JavaScript的诞生
布兰登1995年任职于网景期间,为网景浏览器开发出JavaScript,之后成为浏览器上应用最广泛的脚本语言之一。但是,他对JavaScript没有丝毫的兴趣可言。但是为了应付公司安排的任务,他只用10天时间就把JavaScript给搞出来了。
总的来说,他的设计思路是这样的:
(1)借鉴C语言的基本语法;
(2)借鉴Java语言的数据类型和内存管理;
(3)借鉴Scheme语言,将函数提升到"第一等公民"(first class)的地位;
(4)借鉴Self语言,使用基于原型(prototype)的继承机制。
所以,JavaScript语言实际上是一种混合语言,好听点是集两者大成之物,难听点,就是临时拼凑的语言。 各种奇葩的语法,和结构,着实让人抓狂。
如果不是公司的决策,Brendan Eich绝不可能把Java作为JavaScript设计的原型。
尴尬的是:作为JavaScript的开发者,他一点也不喜欢自己的这个作品。
浏览器大战
1996年8月IE3发布,支持JScript;(微软实现的JS,大家统称山寨版JS)
浏览器大战开始,每家浏览器脚本都不一样
网景反击
1996年11月,网景向ECMA提交语言标准,由于版权问题,JS语言不叫JavaScript,叫ECMAScript。
1997年6月,ECMAScript发布
微软狡猾,将其IE浏览器与Windows系统捆绑,很快便超越了网景;于1998年公司一败再败,后来决定将浏览器开源来获得转机,但实际并没有获得转机,最终被美国AOL收购;收购后网景公司的程序员纷纷被解雇,布莱登在之后一直协助维护Firefox的运营。
1999年12月,第三版发布,这个版本是使用最为广泛的;
2001年,IE6随着Windows xp一起发布。这也正是IE的巅峰时刻,3年时间便在全球市场占有率80%以上;然而,这款浏览器却不兼容W3C的标准(主要是CSS);同时也不断爆出安全漏洞。
与此同时,微软认为自己已经到达巅峰并不需要在养着开发团队,并将其团队解雇。就在此时,Firefox发现了IE的问题,准备重整旗鼓再战IE。最终并未取得太大的成功,但总体上还是有所好转,抢回了全球10%的占有率。也正是此时,谷歌雇佣了IE和Firefox的开发者。微软终于还是发现了自己的问题,开始重新组建自己的团队,并先后发布IE7、IE8,但是根本就打不过IE6。
到2008年,Chrome终于发布,迅速拿下1%的份额;经过3年时间超越Firefox;于2016年已经占据全球市场的62%。在他兴起的这段时间里,社会发生天翻地覆的变化。
2009年,第五版发布。增加了一些功能;
移动市场的兴起
2010年,iPhone4发布;
2011年,微软和Nokia联手准备搞事情,但Nokia被坑,丢了手机市场,最后被微软收购。这一收购为前端开发算是烧了一把火,让前端的发展迅速提上日程。(主要是不用兼容IE)
2015年,第六版发布。新浏览器都支持这一版本。
2016年,淘宝、天猫宣布不再支持IE6、IE7、IE8;
之后每年都更新一个版本。
JavaScript的十大设计缺陷
1. 不适合开发大型程序
2. 非常小的标准库
3. null和undefined
4. 全局变量难以控制
5. 自动插入行尾分号
6. 加号运算符
7. NaN
8. 数组和对象的区分
9. == 和 ===
10. 基本类型的包装对象
以上内容借鉴于饥人谷方方老师ppt,百度百科等资料