首页源码javascript实例教程,jsp页面中调用js文件中的方法如何实现

javascript实例教程,jsp页面中调用js文件中的方法如何实现

编程之家2024-06-05162次浏览

一、前端如何快速上手javascript

也许你听过有人说学会了一门编程语言以后再学其他编程语言就很快上手了,其实这句话是不对的。在已经有编程语言占领了市场以后,又有新的编程语言被创造出来并且对外发布投入使用,多半是因为现有的编程语言在解决某方面问题时不尽人意;如果这个新的编程语言还变得很流行的话,那一定是因为这个编程语言的某些特点存在很大的优势。

javascript实例教程,jsp页面中调用js文件中的方法如何实现

javascript语言能成为现代互联网应用开发使用范围最广的编程语言其自身特点也是十分显著的。

一学习任何一门编程语言首先要看的就应该是这个编程语言的变量类型。

1.JS是动态类型的编程语言。

js和python、php这类的编程语言一样,声明变量时无需指明变量类型,比如vara,就是一个变量声明,既可给a赋值一个数值a=3也可以让a指向一个字符串如a=“hello”。

与动态类型相对的就是静态类型了,比如java、c、c++,静态类型的编程语言声明变量时需要说明变量类型,且一旦确定变量类型后,变量就只能存放这种类型的值,常见的静态类型声明时这样的inta又或者vara:Integer。

2.JS是强类型语言

javascript实例教程,jsp页面中调用js文件中的方法如何实现

关于这一点,很多人可能都存在误解,不过这也不奇怪,因为很多学校早期使用的计算机c语言教材中就出现了错误,导致很多人都弄错了。

与强类型对应的是弱类型,java是强类型,但是C语言是弱类型,js和python是强类型,php是弱类型。区分是不是强类型关键是看变量所指向的存储单元中保存数据时是否区分数据类型而不是看声明变量时有没有指明类型。

以c语言为例,比如变量inta所在内存中保存的数据是b’00000000000000000000000001000001’,很显然这只是一个二进制的值,尽管它的声明是int类型,但它在程序中记录的不一定就是一个数值,它表示什么含义我们只能通过阅读程序才能确定,如果控制台输出时使用c%,那么输出a的到的事字符‘A’,如是使用d%,输出的就是数值65,如果用于信号输出,它表示的就是输出电位。

与c、php语言不同,js是强类型语言,尽管作为动态类型的js声明变量时不需要指定类型,但是一旦赋值后,js在保存变量的时候除了记录值本身,还会标注出变量值的类型,比如在js中a=3,a=3.0a=“3.0”就是完全不同的3个值,强类型在计算的时候需要做类型转换操作,虽然有些变量转换过程是隐式转换(编译器完成)。

二编程语言的程序设计模式

在本文开始时,笔者提到过很多人认为学会一门语言以后再看其他语言就能很快上手的误解,存在这个误解大概是因为普通人在学第一个编程语言时会遇到的一个巨大障碍,那就是程序逻辑。人类要想让计算机帮助人类解决问题就必须学会像计算机一样思考,顺序、循环、分支就是程序逻辑的基础,大学的c语言考试基本上也就是考核程序逻辑为主。

javascript实例教程,jsp页面中调用js文件中的方法如何实现

然而程序逻辑只是人类思考问题的一个角度,一种思维框架而已,程序逻辑是高度数学化的,即便不是工程师人类也需要这种逻辑思维,在美国,小学生就开始学习编程了,这不是为了让小孩子长大以后都去当工程师,而是教会他们一种思维方式,就像经济学家、律师也都有各自的思维框架一样。

因此能用一门编程语言写顺序、循环、分支并不能算上手一门编程语言,真要说上手,至少需要掌握这门编程语言所推崇的设计模式。

JS是函数式的,它支持对象但非面向对象。

面向对象是设计模式吗?对没错,面向对象就是在解决复杂的应用开发中通过抽象业务而诞生的一种设计模式,早期的C语言本身是过程话的编程语言,但是这不妨碍C语言的使用者利用C语言实现面向对象,而面向对象的使用如此的频繁,于是C++诞生了,并且把面向对象直接集成到饿了语言特性里面,后面的java又对C++做出了优化。

JS语言本身并没有实现面向对象,而是通过原型机成链对对象继承做出了支持。即然面向对象只是一种设计模式,js当然也可以自己动手实现面向对象编程。

不过严格意义来讲,如果你真的希望用好js,那么类似java这样的完全面向对象编程并非最适合js的设计模式,因为js语言本身被设计为函数式的,函数式编程对人更友好。如果想要写出真正漂亮的js代码,建议读一读js函数式编程指南。(第3张图片中的这本书)

三容器类型

掌握了变量的类型与使用,也知道了编程范式与适合的设计模式,那么接下来就要看容器类型了,现代化的编程语言多数都内置了大量好用的容器类型,比如数组,字典,链表等。

js中最常用的容器类型是由键值对构成的对象和可变数组,配合json类型表示方法使用起来十分灵活和方便,如果是在某些专业领域使用容器,那么js还提供了更为高效的容器类型,比如float32类型的列表,在最新的js官方文档中可以看到完整的容器类型和具体用法。

四应用领域

js语言和语法特点了解清楚以后,那么我们就应该看看这门语言擅长的领域了。

1.dom编程,所有现代浏览器网页交互都使用js,无论是写公众号h5页面还是做个企业门户,只要需要页面且需要用户交互那就一定少不了js,推荐一本适合新手看的入门好书《javascriptdom编程艺术》,dom编程是非常适合新人的领域。

2.图形图像编程,网页游戏、微信小游戏(小程序)、数据可视化等领域,js的应用也十分广泛,h5的canvasAPi,以及SVG编程都需要使用js,随着移动设备的芯片越来越强大,网页3维图形渲染在性能上也已经不是问题,因此基于WEBGL的应用也越来越广泛,由于图形图像编程对人数学功底要求较高,不建议新人从中这块着手,如果感兴趣的可以关注我,单独私信。

3.nodeJS,由于nodeJS社区的兴起,js在服务器端的应用开发应用也越来越多,尤其是在游戏领域,nodejs除了在服务器端表现出色外,对于js项目的构建和自动化也起到了很大的促进作用,因此,各种基于js的前端开发技术应运而生,比如大名鼎鼎的react与reactnative,这方面也推荐两本书给大家,一个是NodeJS实战,另一本是react实战。

二、如何学习JavaScript

js给初学者的印象总是那么的“杂而乱”,相信很多初学者都在找轻松学习js的途径。js给人这种感觉的原因多半是因为它如下的特点:

A:本身知识很抽象、晦涩难懂,如:闭包、内置对象、DOM。

B:本身内容很多,如函数库,对象库就一大堆。

C:混合多种编程思想。

它里面不但牵涉面向过程编程思想,又有面向对象编程思想,同时,它的面向对象还和别的编程语言(如:C++,JAVA,PHP)不大一样。

就好像又是新的一样,让你对曾经学的面向对象产生了怀疑......

D:辛苦学习后又看似和实际应用脱节。

通常学了很久的js基础之后,变量、函数、对象你也都略知一二,但一到公司开发项目的时候,却又难以下手。

因为公司在开发实际项目的时候通常都是直接用它的衍生库,如:jquery,angular,、boostrap,amaze,layui,ueditor等,而这些库又多如牛毛,同时还有自己的难点。

让你都不知道该学哪个好,甚至都怀疑自己学的是不是js了,好像有多个版本的js一样,总是学不完......

那么,怎么才能在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个月可能学会的,它们硬是能折腾你两年......

书籍推荐(仅供参考)

《JavaScriptDOM编程艺术》

《JavaScript权威指南》

《javaScriptDOM高级程序设计》

《JavaScript设计模式》

《锋利的jquery》

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

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

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

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

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

C:一定不要好高骛远

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

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

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

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

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

E:多写总结

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

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

F:构建知识导图

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

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

注意事项

A:充分利用一切手段

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

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

B:贵在坚持

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

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

C:注意培养信心

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

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

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

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

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

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

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

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

总结

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

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

三、jsp页面中调用js文件中的方法如何实现

1、首先要引入js文件2、指定的元素调用js的方法/*下面的例子是JQuery的方法调用each遍历函数,mouseenter函数,find函数*/3、自定义的函数也的调用functionshow1(obj){obj.style.background="red"

}varoDiv=$('#div1')[0];oDiv.mouseover=function(){show1(oDiv);}

gt-s7568(三星gts7568能否支持4G网络)itunes 注册(如何注册itunes账号)