如何正确学习JavaScript
JavaScript作为网站前端的核心知识是非常重要的,但是如何学习JavaScript是很多初学者面对的一个难题,下面我说一下个人对于如何学习JavaScript的一点心得,希望能帮到大家。
1、首先学习基础,尤其是JavaScript与其他语言不同的基础知识。
学习每个编程语言可能都要从基础的变量函数结构等学起,JavaScript相对于其他的编程语言在基础上有一些比较有特点的地方,这些东西是尤其需要我们注意的,比如说自调函数、比如说变量值为空不是null而是undefined的等,这些东西都是和主流的编程的语言如c++、java等是有区别的,所以想要学好JavaScript,这些基础的知识一定要把握好学习好才行。
2、关于学习JavaScript的进阶
JavaScript进阶知识更是有很多难理解的东西和不同于其他语言的东西,这些东西都是深入学习JavaScript的难点,简单的说一下JavaScript是基于对象的浏览器脚本语言,但是为了使JavaScript也能够支持面向对象编程,人们就使用了很多的方法来模拟面向对象的的特点,这些就变成了JavaScript的一些难点,比如说JavaScript的继承要借助原型、比如JavaScript的类需要使用构造函数来构造一个对象等,这些东西都是和其他支持面向对象的语言是不同的,所以就导致了一些难点。关于进阶学习JavaScript,还有JavaScript一些深入的知识需要去理解比如原型链和闭包、比如收函数的作用域执行流程和上下文,这些东西都是JavaScript比较深入的知识、
最后说明,JavaScript作为前端的核心语言绝对没有没有想象的那么简单,要想学好JavaScript除了以上提到的知识和注意点,还需要的就是多动手和实践,我们都知道网页上的所有特效都是借助JavaScript来实现,那么我们就需要在学习JavaScript的过程中多使用原生的JavaScript代码实现一些特效,当然学习使用jQuery等JavaScript类库进行开发也十分的重要,但是这绝对不能是取代我们学习JavaScript的方法。
1,不要着急看一些复杂网页效果的代码,这样除了打击自信心,什么也学不到。
2,别急着加技术交流QQ群,加牛人QQ。如果找张三丰交流武功。
3,看网上什么多少天精通JS,啥啥啥从入门到精通,这种教程直接跳过吧,太多的事实证明,以一种浮躁的心态去做任何事都会以失败而告终。
4,千万别去弄啥电脑培训,花了钱和时间不说,关键是学不到东西。本来买两本好书自学3个月能学会的,他们硬是能折腾两年。
JavaScript DOM编程艺术
学习Javascript用《JavaScript DOM编程艺术》来入门最好不过了,老老实实看两遍,看完了就会对JS有一个大概的了解,整本书都围绕着一个网页效果例子展开,跟着老老实实敲一篇,敲完之后,会发现这个效果不是常在网页中看到么,发现自己也能做出来网上的效果了。
JavaScript高级程序设计
有的书是用来成为经典的,比如犀牛书;还有些书是用来超越经典的,显然这本书就是这种,可以去Ferris这个教程看看他写的这些效果,看看源代码,怎么样,是不是觉得有一部分很简单了,尝试着跟着他写一写这些效果。
JavaScript语言精粹和高性能JavaScript
JS高级教程的补充,里面有一些内容和JS高级教程重复了,两本书可以同时看,都不厚,可以对前面所学的有一个很好的加强和巩固。
avaScript DOM高级程序设计和JavaScript设计模式
首先教搭建一个类似JQuery的额工具函数库,然后通过讲解几个实际中经常遇到的几个应用例子,会让初学者受益匪浅,Javascript的设计模式,说实话,翻译的质量很一般,有些生硬,但已经基本不影响的学习,看代码完全可以理解出自己的意思。
有一点需要注意,几年前我们需要知道一个真正的服务器端语言(比如PHP,Rails,Java,Python 或者
Perl)去开发可扩展,动态的,数据库驱动的web应用,而现在只用JavaScript就可以实现了。
不要这样学习JavaScript
不要一开始就埋头在成堆的JavaScript在线教程里
,这是最糟糕的学习方法。或许在看过无数个教程后会有点成效,但这样不分层次结构地学习一个东西实在是十分低效,在实际用JavaScript建立网站或web应用时你还是会频繁的卡住。总的来说,这种学习方法会让人不知道如何将语言当做工具来使用——当做个人工具来用。
另外,也许有人会建议从尊敬的JavaScript教父Douglas
Crockford写的《JavaScript语言精粹》开始学习JavaScript。然而,虽然Crockford先生对JavaScript无所不知,被誉为JavaScript世界的爱因斯坦,但他的《JavaScript语言精粹》并不适合初学者学习。这本书没有通透、清晰、明了的阐述JavaScript的核心概念。但对于更高级的学习路线,我倒会建议你看看Crockford先生的视频。
还有,不要只从Codecademy等网站学习JavaScript,因为即使知道怎么编写一大堆JavaScript代码小片段,还是不能学会怎么建立一个web应用程序。即便如此,在后面我还是会建议把Codecademy当做补充的学习资源。
本课程资源
更新:Reddit用户d0gsbody4月8号在Reddit上建立了一个学习小组。他和其他组员都非常积极和乐于助人。我建议你加入这个小组,他们会让你保持积极性且帮助你更好的学习JavaScript。毕竟独自折腾JavaScript还是有点难度的。链接:Learning
JS Properly – Study Group on Reddit
请在以下两本书中选一本,第一本比较适合有编程经验的人,而另一本则适合完全没有编程经验的初学者。
我个人推荐第一本书,因为作者对各个知识点都阐述得非常好且涵盖了一些高级JavaScript知识点。但是,要看懂这本书你至少要对web开发有一定的基本了解。所以,如果你有一点点编程经验或者web开发经验(不一定是JavaScript),那就买这本书吧。
如果你没有编程经验,可以买这本:
纸质版(英文) :JavaScript:
The Definitive Guide
纸质版(中文) :JavaScript权威指南(第6版)
Kindle版(英文):JavaScript:
The Definitive Guide
Kindle版(中文):JavaScript权威指南(原书第6版)
纸质版(英文) :Professional
JavaScript for Web Developers
纸质版(中文) :JavaScript高级程序设计(第3版)
Kindle版(英文):Professional
JavaScript for Web Developers
Kindle版(中文):JavaScript高级程序设计(第3版)
免费注册Stack
Overflow,这是一个编程领域的问答论坛。在这里提问题得到的回答比Codecademy要好,哪怕你的问题非常基础,看起来很傻(记住,从来没有愚蠢的问题)。
免费注册Codecademy,这是一个在线学习平台,你可以直接在浏览器里面写代码。
JavaScriptIsSexy上的一些博文,包括对象,闭包,变量的作用域和提升,函数等等。
转载
有的话买本相关书,写个“Hellow world”什么的答题就民白了。
不过要想学通这门语言,光看书什么的肯定是不行的,找个项目练练,看看API才是真确的。
所以,首先了解基本语法,再试着用它写个项目,就差不多了。
2015-02-24