如何学习js

JavaScript017

如何学习js,第1张

首先要说明的是,咱现在不是高手,最多还是一个半桶水,算是入了JS的门。

谈不上经验,都是一些教训。

这个时候有人要说,“靠,你丫半桶水,凭啥教我们”。您先别急着骂,先听我说。

你叫一个大学生去教小学数学,不见得比一个初中生教得好。因为大学生早已经过了那个阶段,都忘记自己怎么走过来的了。而对于初中生,刚好走过那

个阶段,对自己怎么走过来的还记忆犹新,或者还有一些自己的总结。比如,很多高手觉得那本犀牛书入门很好,他们觉得太简单了,但以我的经验来看,它不是入

门的最好选择。

先说说学js的条件

论条件,咱是文科生,大学专业工商管理,和计算机毛关系都没;有人说英语,读了四年大学,很遗憾,咱还四级没混过;就咱这条件都学得乐呵呵的,您还等啥。

当然学习JS也是有门槛的,就是你的html和css至少还比较熟练,您不能连<body>这东东是干啥的都不知道就开始上JS了,学乘除前,学好加减法总是有益无害的。

再说几点忠告

1,不要着急看一些复杂网页效果的代码,这样除了打击你自信心,什么也学不到。没达到一定的武功水平,割了小JJ也学不会葵花宝典的。

2,别急着加技术交流QQ群,加牛人QQ。如果你找张三丰交流武功,你上去第一句问“丰哥,where is 丹田?”,你会被他一掌劈死的。

3,看网上什么多少天精通JS,啥啥啥从入门到精通,这种教程直接跳过吧,太多的事实证明,以一种浮躁的心态去做任何事都会以失败而告终。

4,千万别去弄啥电脑培训,花了钱和时间不说,关键是学不到东西。本来你买两本好书自学3个月能学会的,他们硬是能折腾你两年。

推荐几本好书

“超毛,你丫吹了半天牛B,还是没说怎么学啊”

呵呵,我也没啥特别的办法,只是推荐几本好书。推荐的书,得按先后顺序看。别第一本没看完,就急着上第二本,并不是每次“穿越”都能成功的

第一阶段:《JavaScript DOM编程艺术》

看这本书之前,请先确认您对Javascript有个基本的了解,应该知道if

else之类的语法,如果不懂,先去看看我第二阶段推荐的《Javascript高级程序设计》的前三章,记住看三章就别往下看了,回到

《JavaScript DOM编程艺术》这本书上来。

学习Javascript用《JavaScript

DOM编程艺术》来入门最好不过了,老老实实看两遍,看完了你就会对JS有一个大概的了解,整本书都围绕着一个网页效果例子展开,你跟着老老实实敲一篇,

敲完之后,你会发现这个效果不是常在网页中看到么,发现自己也能做出来网上的效果了,嘿嘿,小有成就感吧。

第二阶段:《JavaScript高级程序设计》

有的书是用来成为经典的,比如犀牛书;还有些书是用来超越经典的,显然这本书就是这种。书中章章经典,由浅入深,其中第6章,关于JS面向对象的解说,没有教程出其右。

如果有一场满分100分的JS考试,看了《JavaScript DOM编程艺术》能让你拿到20分,那么看完这本书,你就能拿到60分以上了。学完后,你会成就感倍增的,相信我(至少看两遍,推荐三篇,跟着书上的代码一行行的敲)。

这本书强烈推荐购买,写的太TMD牛逼了,给你带来的价值超过百倍千倍。

这本书最新的是第三版,貌似就是前些日子出来的,我看的是第二版,第三版相对第二版变动不大,添加了几章内容,价格目前相差10元左右。

接下来,恭喜你可以下山了,这个时候可以自己做一些事情了

你可以去Ferris这个教程看看他写的这些效果,看看源代码,怎么样,是不是觉得有一部分很简单了,尝试着跟着他写一写这些效果吧。

学技术闭门造车是行不通的,适当的加一两个QQ群交流(注重质量),常去论坛逛逛,你会经常有些小收获的。

再有就是看看前辈这些牛人前辈们分享的文章,它会让你的学习事半功倍的,这里是热心人收集的国内一些牛人的博客、个人网站,点这里。

第三阶段:《JavaScript语言精粹》和《高性能JavaScript》

接下来两本书《JavaScript语言精粹》和《高性能JavaScript》算是JS高级教程的补充,里面有一些内容和JS高级教程重复了,两本书可以同时看,都不厚,可以对前面所学的有一个很好的加强和巩固。

第四阶段:《JavaScript DOM高级程序设计》和《JavaScript设计模式》

在吃透了前面所说的书之后,接下来两本书的顺序已经无关紧要了,《JavaScript DOM高级程序设计》(注意和《JavaScript

高级程序设计》相区别)和《JavaScript设计模式》,这两本都是重量级的书,能让你的JS技术上一个新的台阶;这两本书前者主修炼外功,后者主修

炼内功,有点想乾坤大挪移和九阳神功的关系。

《JavaScript DOM高级程序设计》 首先教你搭建一个类似JQuery的额工具函数库,然后通过讲解几个实际中经常遇到的几个应用例子,会让初学者受益匪浅。

《JavaScript设计模式》主要讲Javascript的设计模式,说实话,翻译的质量很一般,有些生硬,但已经基本不影响你的学习,看代码完全可以理解出自己的意思。

页面要想实现好的互动性Java是必不可少的,特别是在一些网站专题页面对于互动性要求更高,中级和高级web前端工程师js是必须要掌握的,下面为大家详细介绍一下Java。

虽然仍有一些人对 Java 的批评特别是对Java 用于后端任务心存疑虑,但这些并不妨碍Java成为广泛用于客户端的语言,成为前端开发必不可缺少的工具。Java和html一样都是客户端(浏览器执行)的语言,通常Java脚本是通过嵌入在HTML中来实现功能的。

下面为大家介绍java的特点:

1、java是一种解释性脚本语言不进行预编译,而c、c++等编程语言都是先编译后执行,java是逐行解释运行的。

2、基于对象的语言,它不仅可以创建对象,也能使用现有的对象。

3、以嵌入HTML页面,也可写成单独的js文件。

4、多平台运行,在大部分浏览器浏览器的支持下,可以在多种平台下运行比如Android、iOS等。

那么,怎么才能在js领域内学的轻松甚至游刃有余呢?我总结了一些实战意义的js学习经验:

首先要紧紧抓住它的地位

时刻都不能忘记,否则很容易犯“一叶障目不见泰山”的错误。

不要学了很久就知道js是编程语言,就是写代码、而且特点就是乱七八糟就完了,那样是学不好js的。

要时时抓住它的地位,确切的说是它在整个WEB中的地位:它属于前端的核心,主要用来操控和重新调整DOM,通过修改DOM结构,从而来达到修改页面效果的目的。

要用这个中心思想去指导后续的一切js的学习,并且形成条件反射。

要有一条清晰的学习路线

这个只能是过来人给你提供参考了。

我的学习路线如下:

A:js基础部分,如:定义变量、函数、数组、字符串等的处理,内置函数、内置对象等。

B:js面向过程编程思想,封装出各个函数,试着用这些去做一些常见的小功能,如:选项卡,自定义多选按钮,自定义播放器,3D幻灯片;

C:js面向对象编程思想,试着去封装一些你自己的对象,提供出有意义的接口出来;

D:学了上述的内容,然后学常用的库,这里必须学jquery

E:学基于Jquery之上的常见插件,如:bootstrap,Layer,富文本编辑器等。

F:综合应用上面的多种库写实际项目的模板,多写几套。

注意学习方法

我的学习方法总结如下:

A:多买几本国外的js书籍,不要购买那种20天精通之类的书。

否则你是很难学通的,更怕的是:本来你买本好书自学3个月可能学会的,它们硬是能折腾你两年......

书籍推荐(仅供参考)

《Java DOM编程艺术》

《Java权威指南》

《java DOM高级程序设计》

《Java设计模式》

《锋利的jquery》

争取把书上的功能都自己练习多次,不是一次。书读百篇,其义自见。

B:从多角度去学习和领悟

充分调动你所学的东西,从多角度的去做某一功能,如:以前你是从面向过程角度做的,

现在改为从面向对象的角度再来做,或者继续做成可以直接使用的插件,提供属性、方法等出来。争取让你做的这个功能逐渐能使用到实际项目中来。

这样的好处:既综合应用了你的所学,又能有实际意义。

C:一定不要好高骛远

不要放过哪怕很小的动手机会,如做一个选项卡。

千万不要认为有了类似的甚至更好的插件就不需要自己写了,知识是别人的,不是你的,你即使会用了也对你的技术技能水平没有任何提升。

你要多问自己,如果要我来做,我该怎么做?

D:脚踏实地的同时,也不要脱离实际

多看现在网上已经出现的效果好的功能,让它去激发你的学习热情,尽量去学着模拟,调动你的知识去和实际相结合。

E:多写总结

这种总结不但包括源代码、显示效果截图,还应该很容易犯的错误和对应的解决方法以及最后一两句精简的结论性语句。

对自己写的总结不是写完了就了事了,要多回顾,多改进,多精简。到做项目的时候,应该是看里面的一两句话就知道是讲什么了,而不要再去看长篇大论了。

F:构建知识导图

这个可以让你越学越清晰,比如:http://www.phpkhbd.com/sky.html,你可以按你喜欢的任何形式去做,只要自己印象深刻就行。

注意:知识导图也应该是经常修改、修正,让它更合理、更清晰。

注意事项

A:充分利用一切手段

很多人总感觉时间紧,没有大块的时间学习。我要说你不会学了,你不应该只是抱怨,而是要利用一切手段去学习,要知道,不一定只有看书才叫学习。

当你冷静的坐在某个地方,思考了一下,总结了一下,你也都叫学习,但凡有灵感,就可以记录下来,比如:记录在手机上,等方便了再记录在专门的地方。这都叫学习。

B:贵在坚持

要沉的下心。没有一蹴而就的成功,否则那也不是成功,只能叫“侥幸”。

不但要老老实实的把每个功能都试着去实现,而且要精益求精的不断去修正,这个过程是漫长的,也是考验一个人是否是人才的标准。

C:注意培养信心

此时的你,不适合一来就看很复杂很炫的网页效果的源代码,也不适合一来就学jquery,angular,vue,bootstrap这些东西。

这些内容包含了很多深奥的知识在里面,在没有任何基础的情况下直接学这些,会严重打击你的自信心。

而此时你是弱小的,你需要的是培养信心,而不是反过来,否则结局很可能是“夭折”,离学有所成也就遥遥无期了。

D:多跟学的好的过来人学习

站在巨人的肩上,才能看的更远。

E:不要浪费在工具的不停选择上

js的编辑工具很多,如果无从下手,建议使用:sublime,或者使用Hbuilder;很多公司里的技术人员都用这些,你直接用这个也减少了和别人之间的沟通问题。

我也是用这个,感觉很好。

总结

感觉js学起来“杂而乱”的原因是因为你太“聪明”了,一开始就管的太宽,利害得失也计算的太精细。

要求太完美则心里承受能力下降,很容易出现“障”。此时,你应该“笨”一些,不要考利那么长远,“傻人有傻福”,只要做好今天就够了。

一些不合理的学习方法和心态也让你迷失了自我:如:心浮气躁、眼高手低、好高骛远,这些都会让你在“乱七八糟”的js面前深陷迷雾、不能自拔。

此时,你应该重新定位自己的位置,重新去认识js,放下包袱,方能轻松上阵。把杯子先倒空,才能灌新水......

其实,js是前端的核心。影响越来越深的互联网+会渴求越来越多的js人才,只有经历过真正刻骨铭心的学习经历,才能造就出赢得未来的真正精英。