位置: 编程技术 - 正文

JavaScript 学习历程和心得分享(javascript学习指南)

编辑:rootadmin
一、前言

在过去,JavaScript只是被用来做一些简单的网页效果,比如表单验证、浮动广告等,所以那时候JavaScript并没有受到重视。自从 AJAX开始流行后,人们发现利用JavaScript可以给用户带来更好的体验,甚至利用这一优点开发了大型网页游戏,于是这门小语言被重视了起来。现在,很多公司会招专门的JavaScript工程师,通常JavaScript是WEB前端开发的必备技能。简单介绍了JavaScriptr的好处,并不代表大家就会去学习甚至把它学好,兴趣是很关键的,我认为兴趣是最好的老师,它是你专心做一件事并把它做好的动力。另外,大家要相信小语言有大作为,我就曾用Greasemonkey 写过一些非常实用的工具,比如你可以用JavaScript+Greasemonkey写在线网页游戏的外挂程序。下面说说本人学习JavaScript的历程和心得吧。

二、入门

1、学会DIV+CSS布局

使用DIV+CSS布局标准网页,可以使前端XHTML代码更少、结构更清晰,这有利于轻松用JavaScript操作DOM,比如,要展示一个3 行3列的列表,如果用传统的表格布局,现在要你用JavaScript动态生成这个列表,那么就需要一个循环嵌套,如果采用li结构加CSS浮动布局,一次循环就好了。当然,WEB标准化不是一定不能使用表格,我的意思是结构清晰的XHTML更易于把JavaScript效果或功能整合到项目中。

2、掌握几种开发测试工具

做为一个开发人员,熟悉测试工具是必须的,这有助于提高你发现问题和解决问题的效率,对于特别大的项目更是如此。JavaScript和XHTML开发测试利器我就先推荐两个最常用的,它们是:Web Developer 和Firebug 。

3、熟悉JavaScript每一个方法的作用

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

4、了解DOM编程

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

5、接触并使用AJAX

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

三、提高

1、深入理解JavaScript this关键字

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

2、学习JavaScript OOP编程

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

3、了解闭包

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

4、学习规范开发

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

5、找本算法的书读一读

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

四、习惯

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

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

2、阅读优秀的代码,比如jQuery

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

四、注意

1、在JavaScript入门之前避免直接使用JavaScript框架做开发

如果你没有任何JavaScript基础,请不要直接使用JavaScript框架做开发,我认为这可能会误导你对一门语言的认识,比如你直接使用了jQuery用点连起来的语句写法,你是否会认为这是JavaScript语法的一种呢?再比如你使了prototype你不要把框架扩展后的基类方法认为是JavaScript内置的。我认为JavaScript框架是用来提高效率的,它绝对不是JavaScript入门应该学习的。

2、网上找的很多例子可能不是跨浏览器兼容的

有很多JavaScript效果源码是N年前某网友写的,N年前是IE的天下,于是一些前端懒得解决脚本跨浏览器兼容问题,使写出来的脚本只适用于 IE。当你得到这样的一段代码,请不要说垃圾,也不要为此发牢骚,因为这些代码并不是没有一点价值的,如果你了解JavaScript跨浏览器兼容问题,相信你可以很轻松通过少需修改使代码有更好的兼容性。

五、相关阅读

《JavaScript开发规范要求》

推荐整理分享JavaScript 学习历程和心得分享(javascript学习指南),希望有所帮助,仅作参考,欢迎阅读内容。

JavaScript 学习历程和心得分享(javascript学习指南)

文章相关热门搜索词:javascript学了有什么用,javascript要学到什么程度,javascript学习指南,javascript学到什么程度,javascript学了有什么用,javascript学了有什么用,javascript如何学,javascript学了有什么用,内容如对您有帮助,希望把文章链接给更多的朋友!

Javascript学习笔记一 之 数据类型 一.数据类型Javascript是一种弱类型的脚本语言,它一共有6种数据类型,又被分为基础数据类型,特殊数据类型,复合数据类型。1.基础数据类型:数值型

Javascript学习笔记二 之 变量 一.关于Javascript变量声明在Javascript中,声明一个变量vara=1;也可以直接a=1;这两种表达是有区别的,一个是当前作用域的局部变量,另一个则是当前作用域

JavaScript的document对象和window对象详解 [document对象]该对象是window和frames对象的一个属性,是显示于窗口或框架内的一个文档。属性alinkColor活动链接的颜色(ALINK)anchor一个HTMI锚点,使用ANAME=标记

标签: javascript学习指南

本文链接地址:https://www.jiuchutong.com/biancheng/381836.html 转载请保留说明!

上一篇:input按钮的事件处理大全

下一篇:Javascript学习笔记一 之 数据类型(javascript教程推荐知乎)

  • 以前年度所得税滞纳金的账务处理
  • 存在弃置费用的固定资产的财务费用
  • 建筑公司预收了款项已经开了增值税发票怎么做账
  • 企业向个人借款是否合法
  • 小规模没有计提增值税直接缴纳了
  • 打包材料的费用会计分录
  • 装饰公司开票内容怎么填
  • 过渡期损益会计分录
  • 不是本单位职工可以报销差旅费吗
  • 固定资产抵扣新政策2022
  • 申请国家知识产权的条件
  • 对方收到发票不付款怎么办
  • 普通发票需要做分录吗?
  • 电信话费可以开公司发票吗
  • 金税四期具体内容
  • 如何处理走逃失的人
  • 公司注销的流程和费用
  • 退进项税留抵是什么意思
  • 分期付款购买商品
  • 非绑定账户转入啥意思
  • 行政罚款计入什么会计科目
  • 承兑汇票如何背书转让
  • 全免增值税企业有哪些
  • 固定资产 出售
  • 一般纳税人销售二手车增值税税率
  • 在win7系统中,添加打印机驱动程序
  • 餐饮业会计做账技巧
  • 公司收到保险公司赔款
  • php 数组
  • php编写
  • 固定资产已提完折旧,但仍在使用,需要定期清理吗?
  • win7如何禁用wifi
  • 代发工资有什么弊端
  • 年末一般纳税人税率表
  • 进货退回的会计处理
  • laravel 分层
  • 办公楼装修费两万合理吗
  • PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
  • docker部署架构图
  • 代发工资如何计算
  • 史上伟大电影
  • 增值税发票名称可以写个人吗
  • js执行上下文的概念
  • 定额发票验旧日期怎么算
  • win2008 enterprise R2 x64 中安装SQL server 2008的方法
  • 电商新规则
  • 突然收到电子退库收入
  • 工会经费是按应付职工薪酬贷方计提吗
  • 个税手续费返还比例
  • 短期借款可以用于在建工程吗
  • 加工费如何开增票
  • 什么是补偿性余额,对银行借款的成本有何影响?
  • 可转换债券的转换比率计算公式
  • 全面推开营改增政策指引
  • 应交税费其他收入会计分录
  • 出口发票开具普通发票开具汇率是根据什么订?
  • 销售产品收到现款120元是什么制
  • 财务负责人怎么实名认证
  • 一般纳税人的进项税额可以抵扣吗
  • 保险公司业务员误导客户的后果
  • 会计里面权益是什么
  • 个体工商户如何缴纳社保
  • win8怎么卸载
  • win8任务管理器在哪
  • xp系统优化的方法
  • win8跳过开机密码
  • ssh用法及命令
  • 批处理 /b
  • 浅谈如何加强基层党组织建设
  • Node.js中的全局对象有
  • 安卓开发常见问题解决
  • nodejs开启多线程
  • android动画种类
  • python,字符串
  • jquery.qtip提示信息插件用法简单实例
  • 领导班子和领导干部的区别
  • 增值税发票综合服务平台登录不了
  • 税务局网上开票平台app
  • 岗位大练兵业务大比武简报
  • 税务稽查会打电话吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设