【JS】JavaScript的诞生与发展
作者:互联网
1、开发者
- 时间线:布兰登
- 1995年,进入网景公司,为浏览器开发了JS功能;
- 1998年,协助成立Mozilla.org,担任了首席架构师;网景倒后,建立Mozilla基金会;
- 2014年,晋升Mozilla的CEO,十天后被赶下台;
- 2015年,成立Brave公司,开发保护隐私的浏览器;
- 启示:
- 牛逼的程序员从来不是只会一门语言、程序员不怕被辞退、程序员容易创业、可以做到50岁
2、JS的诞生
- 布兰登临危受命:
- 公司要求浏览器添加一个脚本功能
- 公司要求这个脚本蹭Java的热度
- 布兰登十天设计了JS最初构思稿
- JS命名
- Mocha摩卡->LiveScript->JavaScript
- 启示:
- JavaScript初稿只用了10天,诞生之初只是一个不起眼的小功能,设计上未免仓促;
- 有一些BUG,学习时得注意
3、浏览器大战
-
微软跟进
- 1996年8月IE3发布,支持JScript(微软实现的JS),浏览器大战一触即发,每家浏览器的脚本不太一样
-
网景反击
- 1996年11月,网景向ECMA提交语言标准,由于版权问题,JS语言标准不叫JavaScript,叫ECMAScript
-
微软捆绑,网景倒闭
- 由于Windows捆绑IE,1998年网景节节败退,公司陷入内忧外患,为了搏一搏,将浏览器开源firefox,最终公司关门
-
IE6 独占鳌头
- 2001年,IE6和XP一起发布
- 2004年,IE6全球市场占有率80%
- BUT!BUT!BUT!IE6不兼容W3C标准(主要是CSS),也不停的出现漏洞,Firefox打算重生以对抗IE6
- 2005年,IE7发布,但市场份额不如IE6
- 2006年,主流浏览器Firefox和IE6
- 2010年,中国大部分浏览器还是IE6
- 注意!注意!注意!盗版XP系统风行,许多年中IE6占据中国浏览器市场,是前端开发者的噩梦
-
Chrome诞生
- 微软懈怠:IE6成功后,微软解散了IE6团队,Firefox出现后微软重新组建了IE团队,但不是同一波人,IE7/8 BUG不断
- 谷歌出击:
- 2004年,雇用了Firefox和IE的一些开发者
- 2008年,Chrome发布,迅速拿下1%份额
- 2011年,Chrome份额超过Firefox
- 2016年,Chrome份额达62%
4、移动互联兴起
- 时间线:
- 2010年,iPhone4发布
- 2011年,微软和诺基亚联合起来做手机相关业务,但没成功
- 2016年,淘宝天猫宣布不再支持IE6、IE7,同年年底不再支持IE8
- 小结:移动市场的兴起,国内前端摆脱了占有市场绝大多数份额十年的IE浏览器,响应式页面概念出现,前端岗位大爆发
5、ECMAScript标准制定
- 时间线:
- 1997年6月,第一版ECMAScript发布
- 1999年12月,第三版发布,该版使用最广泛
- 第四版,流产(时间和IE6如日中天的时间较吻合)
- 2009年12,第五版发布,增加了一些功能
- 2015年6,第六版发布,新浏览器都支持这一版本(Chrome起来,JS标准才大跨步前进)
- 之后每年发布一版,版本号以年份命名
- JS与ECMAScript关系:
- ECMAScript写在纸上的标准,JS是浏览器实现
- 纸上标准落后于浏览器,先实现再写进标准
- 启示:为压制微软,网景加快了标准化进程,许多问题还没有暴露
6、JavaScript兴起
- 2004年愚人节时,杀手级应用Gmail出现,之前人们认为网页只能看新闻和图片,Gmail的出现让用户和开发者眼前一亮
- 2005年,Jesse将谷歌用到的技术命名为AJAX,从此前端技术正式出现。在此之前网页开发是后端设计师完成。
- 2006年,JQuery发布,目前最长寿的JS库,后十年JQuery大放异彩,直到IE不行了,JQuery才稍微降温。(JQuery能让代码在IE、Firefox、谷歌等都不报错)
7、中国前端
- 正式出现时间:2010年左右,中国才出现前端岗位
- 来源:
- 后端转:面向对象成了JS主流思想
- 设计师:学习CSS,国内独创“重构工程师”
- 缺人
8、JavaScript爆发
- V8 快如闪电
- Chrome的JS引擎是V8
- 2009年,Ryan基于V8创建了Node.js
- 2010年,Isaac基于Node.js写了npm
- 注意!注意!注意!至此,js可以脱离浏览器运行了
- 2010年,TJ受到Sinatra启发,发布了Express.js。用它可以代替java等做一个后端完整的服务器
- 爆发:React、VUE等出现
9、总结:
- JS是历史的选择:只有JS活到了最后
- JS低开高走
- 有了标准、市场证明Gmail、移动端不消耗性能、Node.js可以开发后端
- 学习JS需要注意
- 与IE相关一律不学、旧的/过时的东西了解就好
10、学习小贴士:
10.1 学习要求
10.1.1 学习软要求
1、逻辑能力,例如:三段论
- (1)JS数据类型有:number、string、null、undefined、bool、symbol、object
- (2)JS的函数不是:number、string、null、undefined、bool、symbol中任意一种
- (3)所以,JS函数是object
2、质疑自己的能力
- (1)先质疑自己
- 单词、空格、O->0、iOS->IOS/iOS
- (2)double check
3、抽象思维
- (1)例子
- 订报纸、点关注、JS监听->发布订阅模式
- (2)好处
- 抽象思维解决代码更多问题,而不是一个一个解决。Vue、React就是一个代码解决N多问题
10.1.2 学习硬要求
1、足够的代码量:靠时间的积累
- 达到1000行-新手
- 达到10000行-熟手
- 达到50000行-专业选手
#1、安装
## 统计仓库中的代码行数 count lines of code
yarn global add cloc
## 分析git仓库
cloc --vcs=git .
## 若需要忽略node_modules
#2、注意
## 若仓库有node_modules目录等不相关内容
## 需把/node_modules/写入.gitignore文件
2、了解足够多的概念
- 常用常考
- 闭包、原型; 类、继承;MVC、Flux;高阶函数;前端工程化
- 如何积累
- 记笔记; 思考;博客总结;实践
10.2 有足够的踩坑经验
- 1、何为专家:把该领域内所有的错误都犯完的人,就是专家
- 2、如何踩坑:做项目,而且是个人项目,代码都是自己写的,这样才能全方位踩坑
11、彩蛋:
- IE6神奇的BUG:可以让电脑死机
<!-- 当时流传:*统配符性能底下-->
<style>
*{position:relative}
</style>
<table>
<input>
</table>
标签:浏览器,诞生,JavaScript,IE6,JS,IE,网景,微软 来源: https://blog.csdn.net/Growth_Mindset/article/details/120469181