19. JavaScript概览
19. JavaScript概览
学JS的基本要求
软要求
逻辑能力
质疑自己的能力
抽象思维
硬要求
足够的代码量
达到1000行 - 新手
达到10000行-熟手
达到50000行-专业选手
只能靠时间积累
统计自己的代码量
了解足够多的概念
不仅要会写,还要会扯
概览
常用常考
如何积累
在课程中提炼
在大脑中思考
在博客上总结
在代码中实践
有足够的踩坑经验
你以为是工作经验吗?
踩坑经验
何为专家?
把该领域内所有的错误都犯完的人,就是专家
如何踩坑?
做项目,而且是个人项目
个人项目的意思是所有代码都是你一个人写的
这样你才能全方位踩坑
总结
软要求-逻辑能力, 质疑自己的能力,抽象能力
硬要求-足够多的代码,足够多的概念,足够多的踩坑经验
JS的历史
JavaScript概述-历史与特点
李爵士发明HTML
赖先生发明CSS
布兰登发明JS
布兰登的生平
1961年生于美国
物理学转数学与计算机学位(应该是数学和计算机两个学位,计算机和数学有很多先修课是重合的,美国很多学校可以修double major)
工作七年,负责操作系统与网络开发。
又工作三年,负责微内核与电子信号处理相关工作。
1995年进入网景公司,为其浏览器开发了JS功能。
1998年协助成立Mozilla.org, 担任首席架构师。
网景死亡后,他成立了Mozilla基金会,Firefox就是这个基金会维护的,有纪录片记录了这一过程。
2014年晋升为Mozilla的CEO, 十天后,被赶下台。原因是他曾捐助过反同性恋的法案。
2015年成立Brave公司,开发保护用户隐私的浏览器。
总结
牛逼的程序员
从来不会只学一门编程语言。
不怕被辞退,总能找到事做。
很容易创业,比外行人靠谱得多。
可以干到50岁以上。
JavaScript
诞生之初,只是一个不起眼的小功能。
同时JS有很多bug,我们学习的时候要注意辨别。
JavaScript的诞生
布兰登临危授命
公司要求给浏览器添加一个脚本功能
公司要求这个脚本必须蹭Java的流量
布兰登花十天设计了JS的最初版本。
JS的命名
Mocha摩卡=》LiveScript=〉JavaScript
Java既是编程语言,也是一种咖啡。
浏览器一开始同时就支持Java和JavaScript。
后来JS在浏览器上胜利了。
浏览器大战
微软的跟进
1996年8月IE3发布,支持JScript(微软实现的JS)
浏览器大战开始,每家浏览器的脚本不太一样
网景的反击
1996年11月,网景向ECMA提交语言标准,由于版权问题,JS语言标准不叫JavaScript,叫ECMAScript
网景之死
被收购
微软的IE浏览器由于捆绑进了Windows,很快超越
1998年,网景浏览器节节败退,公司陷入内忧外患
同年,公司打算搏一搏,将浏览器开源(Firefox)
最终,市场并没有因为开源而重新青睐网景
年底,美国在线AOL宣布开始收购网景
收购后,网景团队里的程序员纷纷被解雇
布莱登在之后一直协助维护Firefox的运营
IE6如日中天
你想象不到IE6多么火
2001年,IE6随着Windows XP一起发布
2004年,IE6全球市场占用率80%以上
然而,这款浏览器缺不兼容W3C标准(主要是CSS)
IE6页不断爆出安全漏洞
Firebox打算涅槃重生,重新打败IE
2005年,IE7发布,但打不过IE6
2006年,主流浏览器为IE6和Firefox
2010年,中国的大部分浏览器还是IE6
由于盗版Windows XP在中国的风行,在很多年里,IE6始终占据中国浏览器市场,是前端开发者的恶魔
IE6神奇的bug
下面的代码会让IE6直接崩溃
Chrome横空出世
微软的懈怠
由于IE6的巨大成功,微软觉得再花费精力不值得,而且没有竞争对手,所以直接解散了IE6开发团队。
Firefox的出现让微软重新组建IE团队,但是同一队人,造成IE7,8一直问题不断。
谷歌抓住机会
2004年,谷歌雇佣了一些Firefox和IE的开发者
2008年,Chrome终于发布,迅速拿下1%份额
2011年,Chrome份额超过Firefox
2016年,Chrome全球份额62%
移动市场兴起
智能手机崛起
2010年,iPhone4发布
2011年,微软和Nokia联合起来,打算搞一波事情
后来的事情大家都知道,Nokia的手机业务完了
也就是说,手机上基本没有IE了
前端程序员表示欣喜若狂,IE终于快要死了
2016年,淘宝天猫宣布不再支持IE6,IE7
同年年底,宣布不再支持IE8
移动市场的兴起,让中国前端摆脱IE十年的恐怖支配
从此,前端快速,不对,是急速发展
ECMAScript标准的制定
时间
1997年6月,第一版ECMAScript发布
1999年12月,第三版发布,这个版本使用最广
第四版流产
2009年12月,第五版发布,增加了一些功能
2015年6月,第六版发布,新浏览器都支持这一版
之后每年发布一版,版本号以年份命名
JS与ECMAScript的关系
ECMAScript是纸上的标准,JS是浏览器的实现
纸上标准往往落后于浏览器,先实现,再写进标准
JavaScript兴起
杀手级应用Gmail
2004年愚人节,谷歌发布Gmail在线网页
当时的人们认为网页只能用来看新闻和图片
Gmail的发布让用户和开发者眼前一亮
2005年,Jesse将谷歌用到的技术命名为AJAX
从此,前端技术正式出现
再次之前的网页开发都是由后端和设计师完成
2006年,jQuery发布,是目前最长寿的JS库
后来的十年,jQuery大发异彩,直到IE不行了,jQuery才稍微没有那么火
中国前端的发展
中国的前端
正式出现时间
2010年左右,中国才有专门的前端岗位
前端的来源
一部分来自自学的后端程序员,他们把Java的思想带入JavaScript,面向对象成了JS的主流思想
一部分来自设计师,他们开始学习CSS,并独创了重构工程师岗位(现已没落)
缺人
最应该产出前端人才的大学,迟迟没有相关课程
由于早起前端工资比不上后端,所以大部分人选后端
就如同现在很多高材生选择机器学习一样
一些不小心进入前端领域的科班生成长非常迅速
JavaScript爆发
V8快如闪电
Chrome的JS引擎叫做V8
2009年,Ryan基于V8创建了Node.js
2010年,Isaac基于Node.js写出了npm
前端工程师可以在浏览器之外执行JS了,Node.js快速风靡
同年,TJ受Sinatra启发,发布了express.js
从此,前端工程师可以愉快的写后端应用了
爆发
这期间出来的技术太多,有些基础已经过时了,比如grunt,yeoman
但是webpack,Angular,React,Vue目前比较火。
这就是JS的历史,备胎逆袭
回顾
JS是历史的选择
一开始浏览器支持很多东西:Java,Flash,VBScript
只有JS活到最后
JS的低开高走
一开始JS就是一个玩具语言
但是JS每次都走对了风口
学习JS时需要注意
旧的,过时的东西了解就好,考前记忆一些
跟IE相关的知识一律忽略
前端是进入互联网行业的捷径
最后更新于
这有帮助吗?