Javascript学习指南


Posted in Javascript onDecember 01, 2014

javascript入门太容易了,导致几乎人人随便看看就能上手,零基础的人学个三五天都能对外宣称自己掌握了js。可是真正掌握js是一件很难的事情。如果在初学一门语言的时候第一想到的是问别人,是很难取得进步的。因为得到答案太容易,而不会去想为什么。而且说实话,js并不适合作为第一门编程语言,它兼容并包,容错性高,但这也意味着一但出错你就很难找到错误的原因。另一方面js有一些优秀的特性对于没有编程经历的人来说也很难发现。

如果你真想学好js,我有个大概的自学轨迹供你们参考。

第一步,学习w3school的js编程。

w3school提供了最基础的js学习方案,非常粗略,但很适合让你了解客户端js的概貌。立即可以尝试的实例,也可以让js的初学者马上看到效果。

第二步,你需要一本系统介绍js的书,比如犀牛书(javascript权威指南)。

w3school能告诉你的只有js大概是什么。但你接下来要了解的是js真正是什么。犀牛书就充当了这个角色。犀牛书的涵盖面非常广,并且内容非常全,可以为你打开整个js的世界。当然因为犀牛书比较厚,而且看的时候你没办法马上做点什么成果出来,所以这段时间会比较艰难(对我来说还挺有意思的,因为我喜欢js嘛。)但是如果你真能啃完这本书,我相信你也会被js的魅力所吸引。

第三步,了解js的精华——《javascript语言精粹》

这是一本很薄的书,大概一两天就可以看完。但完全不适合初学者看,当然,相对于看完犀牛书的人来说,就非常适合了。js的诞生太过于仓促,以至于它不得不保留很多糟糕的特性,但你有权利不使用那些。犀牛书告诉了你js是什么,而这本书则告诉你js的精华(与糟粕),看完以后相信你会受益匪浅。

第四步,读代码

如果你不借助任何第三方js库来完成你的网页,说明你很厉害,但我不提倡你那样做。你完全可以使用优秀的第三方js库来进行更快速的开发,比如jquery,dojo,d3等等。而且更令人兴奋的是,这些别人写的js对你是完全可见的。读代码是对一个人编程能力提升最快的方法,但凭空读代码肯定会让你头痛不已。你如何才能快速理解别人为什么要那样写代码?一来你已经读过两本经典的js书籍,你脑子里已经装上了js的精华,二来,你也可以到各种程序员社区提问。

第五步,向开源社区提交代码。

读懂别人的代码是学习,而改进别人的代码则是创造了。
加油吧,总有一天你可以完成一件属于你自己的、开天辟地的作品。

总结:简单的说学习javascript就是要先打好基础,然后多读代码,最后写些例子提交到开源社区,让大家指正你的错误,这样才能更好的进步。

Javascript 相关文章推荐
jQuery.ajax 用户登录验证代码
Oct 29 Javascript
加速IE的Javascript document输出的方法
Dec 02 Javascript
MooTools 页面滚动浮动层智能定位实现代码
Aug 23 Javascript
ECMAScript 创建自己的js类库
Nov 22 Javascript
自编jQuery插件实现模拟alert和confirm
Sep 01 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 简史
Jan 09 Javascript
javascript日期计算实例分析
Jun 29 Javascript
javascript自动切换焦点控制效果完整实例
Feb 02 Javascript
JavaScript  cookie 跨域访问之广告推广
Apr 20 Javascript
js使用i18n实现页面国际化的方法
May 09 Javascript
Angular4.0中引入laydate.js日期插件的方法教程
Dec 25 Javascript
Vue使用预渲染代替SSR的方法
Jul 02 Javascript
Javascript模块化编程详解
Dec 01 #Javascript
浅谈Javascript中深复制
Dec 01 #Javascript
使用JS+plupload直接批量上传图片到又拍云
Dec 01 #Javascript
关于javascript模块加载技术的一些思考
Nov 28 #Javascript
jQuery实现Twitter的自动文字补齐特效
Nov 28 #Javascript
关于编写性能高效的javascript事件的技术
Nov 28 #Javascript
推荐25个超炫的jQuery网格插件
Nov 28 #Javascript
You might like
强烈推荐:php.ini中文版(2)
2006/10/09 PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
2016/08/11 PHP
javascript 密码强弱度检测万能插件
2009/02/25 Javascript
ie 调试javascript的工具
2009/04/29 Javascript
javascript 处理事件绑定的一些兼容写法
2009/12/24 Javascript
jQuery EasyUI API 中文文档 - ComboBox组合框
2011/10/07 Javascript
window.open以post方式将内容提交到新窗口
2012/12/26 Javascript
jQuery中after的两种用法实例
2013/07/03 Javascript
tab栏切换原理
2017/03/22 Javascript
vue.js获取数据库数据实例代码
2017/05/26 Javascript
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
jQuery移动端跑马灯抽奖特效升级版(抽奖概率固定)实现方法
2019/01/18 jQuery
微信小程序与公众号卡券/会员打通的问题
2019/07/25 Javascript
[01:14:31]Secret vs VG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
2017/12/11 Python
mac系统安装Python3初体验
2018/01/02 Python
python SMTP实现发送带附件电子邮件
2018/05/22 Python
Python秒算24点实现及原理详解
2019/07/29 Python
python tkinter基本属性详解
2019/09/16 Python
Python综合应用名片管理系统案例详解
2020/01/03 Python
通过python调用adb命令对App进行性能测试方式
2020/04/23 Python
python求numpy中array按列非零元素的平均值案例
2020/06/08 Python
Python实现爬取并分析电商评论
2020/06/19 Python
Python实现数字的格式化输出
2020/08/01 Python
Python大批量搜索引擎图像爬虫工具详解
2020/11/16 Python
Java里面如何把一个Array数组转换成Collection, List
2013/07/26 面试题
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
数学系毕业生的自我评价
2014/01/10 职场文书
房地产财务管理制度
2014/02/02 职场文书
外贸专业求职信
2014/03/09 职场文书
学校领导班子四风问题整改意见
2014/10/02 职场文书
2015年业务员工作总结范文
2015/04/07 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
创业的9条正确思考方式
2019/08/26 职场文书
redis数据结构之压缩列表
2022/03/21 Redis
HTML静态页面获取url参数和UserAgent的实现
2022/08/05 HTML / CSS