位置: 编程技术 - 正文

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教程推荐知乎)

  • 支付增值税会计科目
  • 税务师考试的报名费怎么还没有退成功
  • 为什么征收增值税体现了量益原则
  • 电子税务局利润表本期金额
  • 员工餐补是放入福利费吗?
  • 法人可不可以办信用卡
  • 应收账款属于非流动资产吗
  • 房屋改造工程怎么计入固定资产
  • 长期挂账的应付账款怎么处理
  • 业务招待费可以开专票吗
  • 长期借款科目核算的是企业的长期借款本金和利息
  • 差旅费应纳入社保缴费基数吗?
  • 农民合作社缴附加税吗
  • 公车补贴计入什么科目
  • 自行开发的软件如何确认为无形资产
  • 个人去税务局开居间费发票
  • 扣服装费的收入如何交增值税?
  • 印花税的计税依据含税吗
  • 小微企业免税销售额和未达起征点销售额区别
  • 建筑 分包
  • 房屋抵债如何确定契税计税依据?
  • 移动通信定额发票
  • 1697508923
  • 预付货款样品费怎么入账
  • 股东退股未分配股利
  • 弥补以前年度亏损是什么意思
  • win11耳机插电脑没声音怎么办
  • 资产负债表怎么看平不平
  • 为什么电脑连上蓝牙耳机却是外放
  • 驾校收入与成本的关系
  • win10专区
  • php dom
  • PHP:zip_entry_open()的用法_Zip函数
  • 应收账款怎么做会计分录
  • 在途货物退货
  • 预付工程施工款会计分录
  • 汽车购置税去哪交钱
  • PHP 中TP5 Request 请求对象的实例详解
  • centos下file_put_contents()无法写入文件的原因及解决方法
  • 房租违约金怎么开发票
  • 两阶段鲁棒优化 多目标
  • python导入其他文件的函数
  • nerf新手入门
  • PyTorch深度学习实战 | 基于ResNet的人脸关键点检测
  • 用人单位招用失业人员补贴
  • 发票入账怎么做分录
  • 固定资产处置收入增值税税率
  • 实收资本核算有哪些要求
  • 普通发票需要做合同才能开吗
  • 过了汇算清缴还能调整以前年度
  • 处置子公司如何纳税
  • 企业利润分配的含义
  • 房地产预缴所得税的计税基础
  • 金税四期对企业影响
  • 固定资产原值减少后如何计提折旧
  • 显示应退税额就是能退是吗
  • 企业会计准则下职工薪酬核算的困难与对策研究
  • 进项税额属于什么会计科目
  • 快递费用在线查询
  • 合伙企业是什么组织形式
  • 工会为员工购买水杯
  • 财务预算怎么做模板
  • mysql order by 性能
  • mysql怎么实现
  • mac的vmware
  • macos卸载java
  • 雨林木风Windows10
  • win7 桌面空白
  • win7系统连接蓝牙音箱
  • win10自动更新win11怎么办
  • 关于extjs4如何获取grid修改后的数据的问题
  • cocos2dx 3.3 quick lua 实现返回键退出程序
  • 电脑自动检测硬盘怎么取消
  • shell 自定义函数
  • 遮罩有什么作用
  • python的基础代码
  • python中遍历
  • 地税征税范围
  • 车辆购置税是国税吗
  • 商品房开超市
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设