1. 熟悉JavaScript每一个方法的作用

这一要求听起来似乎有点不太实际,我想这个要求对于像C#、JAVA这些大型语言来说确实是,因为这些语言类库实在太庞大了,相信没有人可以全面记住它,而且也是没有必要全部记住,比如用JAVA做网页与手机开发所关注的类库是不一样的。而JavaScript则不是,它的内置方法函数真的不多,先全面熟悉一下,开发起来也将得心应手,比如,你一开始可能认为JavaScript有trim()这个很多语言都有的去行头行尾空格的方法,当你了解JavaScript内置函数库后你会发现原来在JavaScript中这些方法是要自己去实现。再比如,如果你是从其它比较强大的语言转过来玩JavaScript,你又可能认为JavaScript应该有MD5加密的方法,当然这也是没有的,但有人用JavaScript实现了这样的方法,即JavaScript MD5。说到底JavaScript内置方法少的可怜,但很多牛人写了一些新方法增加JavaScript功能,比如prototype框架主要是对JavaScript基础函数进行原型扩展的。

    1. 了解DOM编程

了解DOM编程算是学习JavaScript过程比较重要的课程,因为JavaScript除了编写一些纯数据处理的逻辑外,更多的是在动态更改XHTML的结构和内容,以达到界面动态更新的目的,而这些工作都要依赖DOM编程。jQuery框架在这方面封装的相当好,提供了丰富的DOM操作方法,可以让你轻松找到页面任何地方的一个DOM节点(XHTML标签),然后进行相关操作(增、删、改、查)。对于有过用其它语言操作XML文档经验的朋友,相信这一块很快上手。

    1. 接触并使用AJAX

在今天,学习了JavaScript而不使用AJAX,那是埋没JavaScript优势了(AJAX本身并不能算是JavaScript内容)。AJAX对于用户以及服务器来说都是有好处的,对于用户,提供更好的用户体验,最典型的一个应用场景:注册页面的用户名可用性预检测,传统的可能会遇到这样的问题:用户填写了一堆资料后提交表单,结果被服务器告知这个用户被注册了,要用户重新填写资料注册,这对于大型多用户网站那是很致命的,因为用户输10个用户名可能有一半已被使用了。对于服务器来说,减少网页流量,因为AJAX后,一般是按需加载数据的,不会因为局部更新而重新加载整个页面。比如一个网页占三屏高,我们可以默认只加载第一屏的内容,当用户拉动滚动条往下的时候,再加载二三屏的内容。另外像WEB在线地图应用也是AJAX使用的典范。

提高

    1. 深入理解JavaScript this关键字

JavaScript this的作用与指向跟很多真正面向对象的开发语言是有很大差别的,它不始终指向当前对象,是会变化的。如果不注意这个问题,就有可能遇到看似没错的代码报错或不执行等问题。

    1. 学习JavaScript OOP编程

OOP是个好东西,它使程序员思考问题更有组织性,代码的组织也更清晰。JavaScript 也可以OOP,但与一些传统的OOP语言同样存在较大差别,所以要真正用熟JavaScript OOP也是需要下点功夫的。

    1. 了解闭包

JavaScript闭包也是被谈得比较多的一个话题,闭包使JavaScript变量作用域变得复杂起来,但这一特性又使这门语言变的更灵活了。

    1. 学习规范开发

团队精神相信大家是听过不少了,就职一个公司做开发,当然离不开团队,团队要想合作愉快,每个成员的编码必需符合一定规范,这也是每个公司对程序员的基本要求。关于规范通常指变量命名、文件组织、注释规范等,这方面知识与其它语言的规范是有相通性的。

    1. 找本算法的书读一读

我认为学会并使用一门语言并不是什么难事,难的应该是用语言这基本的语法与语句去解决一些复杂的问题。要解决一些复杂的问题,可能会用上一些算法,有些算法实现可能是一个团队在做的,比如中科院中文分词的具体实现,另外像游戏常用自动寻径A*算法等。也许你认为你不可能在JavaScript开发上遇到这么复杂的问题,其实这还要看你在做什么项目,如果你是在开发大型网页游戏,通常面临更多具有挑战性的难题,如果你有读过一些算法书籍,了解一些常见问题的解决方法,在开发过程中自然会如虎添翼。另外,熟悉算法显然对于你日后接触其它开发语言也是有帮助的。

习惯

    1. 兼容、BUG问题做好笔记

CSS与JavaScript浏览器兼容问题最好做好笔记,因为这些问题,或者说BUG是比较诡异的,这些问题浏览器不会提示你错在哪里,IDE也不会提示你,特别是CSS兼容问题,这就会导致你在开发过程碰到这样的问题会卡老半天得不到解决。即使之前解决过同类问题,以后可能又会碰上,结果之前没有做好笔记加强记忆,注定你要再受罪一次,因为这些兼容问题不是一两个,临时记忆效果是不明显的。以我经验,很多问题是在IE6下发生的,现在IE6连微软自己都希望加速它灭亡,这对于前端开发的我们来说当然是一个好消息。

    1. 阅读优秀的代码,比如jQuery

阅读优秀代码绝对也是自我提高的好方法,这不仅可以了解优秀代码的组织规范,更可以了解一些功能的实现思路。比如jQuery就是一个非常值的学习的JavaScript框架。当然了,要阅读这样专业的JavaScript框架,JavaScript基础要扎实,不然看的过程中会遇到太多疑问,甚至对自己的信心也是一种打击。

js-学习方法之3的更多相关文章

  1. 【转】JAVA自学之路

    JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...

  2. java学习流程

    J2SE 面向对象-封装.继承.多态内存的分析递归集合类.泛型.自动打包与解包.Annotation IO 多线程.线程同步 TCP/UDP AWT.事件模型.匿名类 正则表达式反射机制 2:数据库( ...

  3. J2EE学习路线图

    一:J2SE 面向对象-封装.继承.多态 内存的分析 递归 集合类.泛型.自动打包与解包.Annotation IO 多线程.线程同步 TCP/UDP AWT.事件模型.匿名类 正则表达式 反射机制 ...

  4. 我们如何学好java

    转载:http://www.zhihu.com/question/19945685 马士兵有一篇文章,我觉得写得很好,原文转载如下,希望题主可以好好读读. ---------------------- ...

  5. 如何自学Java 经典

    JAVA自学之路 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟 ...

  6. 如何自学Java

    转自:http://www.360doc.com/content/12/0624/19/5856897_220191533.shtml   JAVA自学之路 JAVA自学之路 一:学会选择 为了就业, ...

  7. Java 学习路线以及各阶段学习书籍,博文,视频的分享

    感谢: 感谢每一个打开这篇文章的人,听我在这里瞎扯!至于我为什么会有闲情写这篇文章呢?因为我每天想的是为什么要给我这样的需求,背后的人性是什么,我能再做些什么能让他更好.久而久之,我也稍微有了些自己的 ...

  8. Web前端新手经典学习路线

    做前端开发八九年的时间,到2015年的时候,Web前端因为HTML5技术的高速发展,成为IT行业中最受欢迎和未来需求人才发展最好的职业,各个行业都想转行做前端开发,包括一些在校的学生,土木工程,一些不 ...

  9. 【转】Java自学之路——by马士兵

    作者:马士兵老师 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟 ...

  10. Java自学之路(新手一定要看)

    Java自学之路(新手一定要看) 转自尚学堂 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游 ...

随机推荐

  1. 嗯,这个BLOG其实是个更新服务器

    2333 软件:http://dwz.cn/NKSGUI

  2. jsp中使用java函数

    <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> ${fn ...

  3. Foxit Reader(福昕PDF阅读器) v4.3.1.218 绿色专业版

    软件名称:Foxit Reader(福昕PDF阅读器) v4.3.1.218 绿色专业版 软件语言: 简体中文 授权方式: 免费软件 运行环境: Win 32位/64位 软件大小: 4.40MB 图片 ...

  4. 在http编程的门口----飞牛网自动下单,查单

    刚进这个公司,以前没接触过http编程,所以这两天做了个小例子来熟悉http编程,有点晕..... 不过还是做出来了,虽然有点粗糙,总结一下这个小软件: 主要使用QNetworkAccessManag ...

  5. quagga源码分析--通用库command

    quagga作为一个路由器软件,自然要提供人机接口. quagga提供snmp管理接口,而且,自然就会有对应的命令行管理格式,当然一般路由软件不会提供界面形式的,也许有webui,然而quagga并没 ...

  6. Unity3DGUI:Window

    #pragma strictvar winRect:Rect=Rect(30,100,150,200);var windowShow:boolean=true;function OnGUI () { ...

  7. 解决mac-osx10.11下无法安装wxPython2.8-osx-unicode-2.8.12.1的问题

    在mac-osx10.11版本下,安装RIDE前提需要装wxPython2.8-osx-unicode-2.8.12.1库,但在安装wxPython过程中,会提示安装失败,以下提供一种解决方案 这里我 ...

  8. Spring Security(18)——Jsp标签

    目录 1.1     authorize 1.2     authentication 1.3     accesscontrollist Spring Security也有对Jsp标签的支持的标签库 ...

  9. Unity性能优化——LOD技术

    LOD,中文名多层次细节,是游戏中最常用的技术,它按照模型的位置和重要程度决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算.今天我们来实现使用它来做一个简单的优化例子. ...

  10. 面试题-Java基础-集合和数组

    1.Java集合类框架的基本接口有哪些? 集合类接口指定了一组叫做元素的对象.集合类接口的每一种具体的实现类都可以选择以它自己的方式对元素进行保存和排序.有的集合类允许重复的键,有些不允许.Java集 ...