1、Javascript基础知识Javascript基础知识 一、 JavaScript语言概况什么是JavaScriptJavaScript和Java的区别JavaScript程序运行环境编写第一个JavaScript程序 二、 JavaScript基本数据结构JavaScript代码的加入基本数据类型表达式和运算符范例:跑马灯效果 三、 JavaScript程序构成程序控制流函数事件驱动及事件处理范例:自动装卸载;获取版本号 四、 基于对象的JavaScript语言对象的基础知识常用对象的属性和方法范例:时钟 五、 创建新对象对象的定义创建对象实例对象方法的使用JavaScript中的数组范例
2、:动态文字滚动;颜色变化 六、 使用内部对象系统浏览器对象层次及其主要作用文档对象功能及其作用范例:文档对象的综合应用 七、 窗口及输入输出窗口及输入输出简单的输入、输出例子范例:在线时间 八、 WEB页面信息交互窗体基础知识窗体中的基本元素范例:动态按钮 九、 实现更复杂交互什么是框架如何访问框架范例:动态交互第一讲 JavaScript语言概况 Internet时代,造就了我们新的工作和生活方式,其互联性、开放性和共享信息的模式,打破了传统信息传播方式的重重壁垒,为我们带来了新的机遇。随着计算机和信息时代的到来,人类社会前进的脚步在逐渐加快,每一天都有新的事情发生,每一天都在创造着奇迹。随
3、着Internet技术的突飞猛进,各行各业都在加入Internet的行业中来。无论从管理方面,还是从商业角度来看,Internet都可以带来无限生机。通过Internet,可以实现地区、集体乃至个人的连接,从而达到一种“统一的和谐”。那么怎样把自己的或公司的信息资源加入到 WWW 服务器,是广大用户日益关心的问题。采用超链技术(超文本和超媒体技术)是实现这个目标最简单的、最快速的手段和途径。具体实现这种手段的支持环境,那就是HTML超文本标识语言。通过它们可制作所需的Web网页。通过超文本(Hyper Text)和超媒体(Hyper Media)技术结合超链接(Hype
4、r link)的链接功能将各种信息组织成网络结构(web),构成网络文档(Document),实现Internet上的“漫游”。通过HTML符号的描述就可以实现文字、表格、声音、图像、动画等多媒体信息的检索。然而采用这种超链技术存在有一定的缺陷,那就是它只能提供一种静态的信息资源,缺少动态的客户端与服务器端的交互。虽然可通过CGI (Common Gateway Interface)通用网关接口实现一定的交互,但由于该方法编程较为复杂,因而在一段时间防碍了Internet技术的发展。而JavaScript的出现,无疑为Internet网上用户带来了一线生机。可以这样说,
5、JavaScript的出现是时代的需求,是当今的信息时代造就了JavaScript。JavaScript的出现,它可以使得信息和用户之间不仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交式的表达能力。从而基于CGI静态的HTML页面将被可提供动态实时信息,并对客户操作进行反应的Web页面的取代。JavaScript脚本正是满足这种需求而产生的语言。它深受广泛用户的喜爱的欢迎。它是众多脚本语言中较为优秀的一种,它与WWW的结合有效地实现了网络计算和网络计算机的蓝图。无凝Java家族将占领Internet网络的主导地位。因此,尽快掌握JavaScript脚本语言编程方法是我国广大用户
6、日益关心的。一、什么是JavaScriptJavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本语言。使用它的目的是与HTML超文本标记语言、Java 脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用。从而可以开发客户端的应用程序等。它是通过嵌入或调入在标准的HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择,具有以下几个基本特点: 是一种脚本编写语言JavaScript是一种脚本语言,它采用小程序段的方式实现编程。像其它脚本语言一样,JavaScript同样已是一
7、种解释性语言,它提供了一个易的开发过程。它的基本结构形式与C、C+、VB、Delphi十分类似。但它不像这些语言一样,需要先编译,而是在程序运行过程中被逐行地解释。它与HTML标识结合在一起,从而方便用户的使用操作。 基于对象的语言。JavaScript是一种基于对象的语言,同时以可以看作一种面向对象的。这意味着它能运用自己已经创建的对象。因此,许多功能可以来自于脚本环境中对象的方法与脚本的相互作用。 简单性JavaScript的简单性主要体现在:首先它是一种基于Java基本语句和控制流之上的简单而紧凑的设计, 从而对于学习Java是一种非常好的过渡。其次它的变量类型是采用弱类型,并未使用严格
8、的数据类型。 安全性JavaScript是一种安全性语言,它不允许访问本地的硬盘,并不能将数据存入到服务器上,不允许对网络文档进行修改和删除,只能通过浏览器实现信息浏览或动态交互。从而有效地防止数据的丢失。 动态性JavaScript是动态的,它可以直接对用户或客户输入做出响应,无须经过Web服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱动,就是指在主页(Home Page)中执行了某种操作所产生的动作,就称为“事件”(Event)。比如按下鼠标、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响应。 跨平台性JavaScr
9、ipt是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持JavaScript的浏览器就可正确执行。从而实现了“编写一次,走遍天下”的梦想。实际上JavaScript最杰出之处在于可以用很小的程序做大量的事。无须有高性能的电脑,软件仅需一个字处理软件及一浏览器,无须WEB服务器通道,通过自己的电脑即可完成所有的事情。综合所述JavaScript 是一种新的描述语言,它可以被箝入到 HTML 的文件之中。 JavaScript语言可以做到回应使用者的需求事件 (如: form 的输入) ,而不用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用
10、经过传给伺服端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程式所处理。JavaScript 和 Java 很类似,但到底并不一样! Java 是一种比 JavaScript 更复杂许多的程式语言,而 JavaScript 则是相当容易了解的语言。JavaScript 创作者可以不那麽注重程式技巧,所以许多 Java 的特性在 Java Script 中并不支援。二、JavaScript和Java的区别虽然JavaScript与Java有紧密的联系,但却是两个公司开发的不同的两个产品。Java是SUN公司推出的新一代面向对象的程序设计语言,特别适合于Int
11、ernet应用程序开发;而JavaScript是Netscape公司的产品,其目的是为了扩展Netscape Navigator功能,而开发的一种可以嵌入Web页面中的基于对象和事件驱动的解释性语言, 它的前身是Live Script;而Java的前身是Oak语言。下面对两种语言间的异同作如下比较:基于对象和面向对象Java是一种真正的面向对象的语言,即使是开发简单的程序,必须设计对象。JavaScript是种脚本语言,它可以用来制作与网络无关的,与用户交互作用的复杂软件。它是一种基于对象(Object Based)和事件驱动(Event Driver)的编程语言。因而它本身提供了非常丰富的内
12、部对象供设计人员使用。 解释和编译两种语言在其浏览器中所执行的方式不一样。Java的源代码在传递到客户端执行之前,必须经过编译,因而客户端上必须具有相应平台上的仿真器或解释器,它可以通过编译器或解释器实现独立于某个特定的平台编译代码的束缚。JavaScript是一种解释性编程语言,其源代码在发往客户端执行之前不需经过编译,而是将文本格式的字符代码发送给客户编由浏览器解释执行。 强变量和弱变量两种语言所采取的变量是不一样的。Java采用强类型变量检查,即所有变量在编译之前必须作声明。如:Integer x;String y;x=1234;x=4321;其中X=1234说明是一个整数,Y=4321
13、说明是一个字符串。JavaScript中变量声明,采用其弱类型。即变量在使用前不需作声明,而是解释器在运行时检查其数据类型,如:x=1234;y4321;前者说明x为其数值型变量,而后者说明y为字符型变量。 代码格式不一样Java是一种与HTML无关的格式,必须通过像HTML中引用外媒体那么进行装载,其代码以字节代码的形式保存在独立的文档中。JavaScript的代码是一种文本字符格式,可以直接嵌入HTML文档中,并且可动态装载。编写HTML文档就像编辑文本文件一样方便。 嵌入方式不一样在HTML文档中,两种编程语言的标识不同,JavaScript使用<Script>.</S
14、cript>来标识,而Java使用<applet>.</applet>来标识。 静态联编和动态联编Java采用静态联编,即Java的对象引用必须在编译时的进行,以使编译器能够实现强类型检查。JavaScript采用动态联编,即JavaScript的对象引用在运行时进行检查,如不经编译则就无法实现对象引用的检查。三、JavaScript程序运行环境软件环境:Windows 95/98或Windows NT。Netscape Navigator x.0或Internet Explorer x.0。用于编辑HTML文档的字符编辑器(WS、WPS、Notepad、Word
15、Pad等)或HTML文档编辑器。硬件配置:首先必须具备运行Windows 95/98或Windows NT的基本硬件配置环境。推荐:基本内存32M。CRT只少需要256颜色,分辨率在640X480以上。CPU只少133以上。鼠标和其它外部设置(根据需要选用)。四、编写第一个JavaScript程序下面我们通过一个例子,编写第一个JavaScript程序。通过它可说明JavaScript的脚本是怎样被嵌入到HTML文档中的。test1.html文档:<html><head><Script Language =JavaScript>/ JavaScript Ap
16、pears here.alert(这是第一个JavaScript例子!);alert(欢迎你进入JavaScript世界!);alert(今后我们将共同学习JavaScript知识!);</Script></Head></Html>在Internet Explore5.0中运行行后的结果见下图所示。说明:test.html是HTML文档,其标识格式为标准的HTML格式;如同HTML标识语言一样, JavaScript程序代码是一些可用字处理软件浏览的文本,它在描述页面的HTML相关区域出现。JavaScript代码由 <Script Language
17、=JavaScript>.</Script>说明。在标识<Script Language =JavaScript>.</Script>之间就可加入JavaScript脚本。alert()是JavaScript的窗口对象方法,其功能是弹出一个具有OK对话框并显示()中的字符串。通过<!- ./->标识说明:若不认识JavaScript代码的浏览器,则所有在其中的标识均被忽略;若认识,则执行其结果。使用注释这是一个好的编程习惯,它使其他人可以读懂你的语言。JavaScript 以 </Script> 标签结束。从上面的实例分析中我们
18、可以看出,编写一个JavaScript程序确实非常容易的。 第二讲 JavaScript基本数据结构 JavaScript提供脚本语言的编程与C+非常相似,它只是去掉了语言中有关指针等容易产生的错误,并提供了功能强大的类库。对于已经具备+或语言的人来说,学习JavaScript脚本语言是一件非常轻松愉快的事。一、JavaScript代码的加入JavaScript的脚本包括在HTML中,它成为HTML文档的一部分。与HTML标识相结合,构成了一个功能强大的Internet网上编程语言。可以直接将JavaScript脚本加入文档:<Script Language =JavaScript>
19、;JavaScript语言代码;JavaScript 语言代码;.</Script>说明: 通过标识<Script>.</Script>指明JavaScript脚本源代码将放入其间。 通过属性Language =JavaScript说明标识中是使用的何种语言,这里是JavaScript语言, 表示在JavaScript中使用的语言。下面是将JavaScript脚本加入Web文档中的例子:<HTML><Head><Script Language =JavaScript>document. Write(网上世界真精彩!);do
20、cument. close();</Script></Head></HTML> 在浏览器的窗口中调用,则显示“网上世界真精彩!”字串。说明:Document. write()是文档对象的输出函数,其功能是将括号中的字符或变量值输出到窗口;document. close()是将输出关闭。可将<Script>.</Script>标识放入head>. </Head>或<Body> .</Body>之间。将JavaScript标识放置<Head>. </Hea
21、d>在头部之间,使之在主页和其余部分代码之前装载,从而可使代码的功能更强大;可以将JavaScript标识放置在<Body>. </Body>主体之间以实现某些部分动态地创建文档。二、基本数据类型 JavaScript脚本语言同其它语言一样,有它自身的基本数据类型、表达式和算术运算符以及程序的基本框架结构。JavaScript提供了四种基本的数据类型用来处理数字和文字, 而变量提供存放信息的地方, 表达式则可以完成较复杂的信息处理。1、基本数据类型在JavaScript中四种基本的数据类型:数值(整数和实数)、字符串型(用“”号或̵
22、6;’括起来的字符或数值)、布尔型(使True或False表示)和空值。在JavaScript的基本类型中的数据可以是常量,也可以变量。由于JavaScript采用弱类型的形式,因而一个数据的变量或常量不必首先作声明,而是在使用或赋值时确定其数据的类型的。当然也可以先声明该数据的类型,它是通过在赋值时自动说明其数据类型的。2、常量整型常量JavaScript的常量通常又称字面常量,它是不能改变的数据。其整型常量可以使用十六进制、八进制和十进制表示其值。 实型常量实型常量是由整数部分加小数部分表示,如12.32、193.98 。可以使用科学或标准方法表示:5E7、4e5等。 布尔值布
23、尔常量只有两种状态:True或False。 它主要用来说明或代表一种状态或标志,以说明操作流程。它与是不一样的,可以用或表示其状态,而JavaScript只能用True或False表示其状态。 字符型常量使用单引号(‘)或双引号(“)括起来的一个或几个字符。如 This is a book of JavaScript 、3245、ewrt234234 等。 空值JavaScript中有一个空值null,表示什么也没有。如试图引用没有定义的变量,则返回一个Null值。 特殊字符同语言一样,JavaScript中同样以有些以反斜杠()开头的不可显示的特殊字符。通常称为控制字
24、符。 3、变量变量的主要作用是存取数据、提供存放信息的容器。对于变量必须明确变量的命名、变量的类型、变量的声明及其变量的作用域。变量的命名JavaScript中的变量命名同其计算机语言非常相似,这里要注意以下两点:必须是一个有效的变量,即变量以字母开头,中间可以出现数字如test1、text2等。除下划线()作为连字符外,变量名称不能有空格、()、()、(,)或其它符号。 不能使用JavaScript中的关键字作为变量。在JavaScript中定义了多个类键字,这些关键是JavaScript内部使用的,不能作为变量的名称。如Var、int、double、true不能作为变量的名称。在对变量命名
25、时,最好把变量的意义与其代表的意思对应起来,以免出现错误。变量的类型在JavaScript中,变量可以用命令Var作声明:var mytest;该例子定义了一个mytest变量。但没有赋予它的值。Var mytest=”This is a book”该例子定义了一个mytest变量, 同时赋予了它的值。在JavaScript中,变量以可以不作声明,而在使用时再根据数据的类型来确其变量的类型。如:x=100y=125xy= Truecost=19.5等。其中x整数,y为字符串,xy为布尔型,cost为实型。变量的声明及其作用域JavaScript变量可以在使用前先作声明,
26、并可赋值。通过使用var关键字对变量作声明。对变量作声明的最大好处就是能及时发现代码中的错误;因为JavaScript是采用动态编译的,而动态编译是不易发现代码中的错误,特别是变量命名的方面。对于变量还有一个重要性那就是变量的作用域。在JavaScript中同样有全局变量和局部变量。全局变量是定义在所有函数体之外,其作用范围是整个函数;而局部变量是定义在函数体之内,只对其该函数是可见的,而对其它函数则是不可见的。三、表达式和运算符、表达式在定义完变量后,就可以对它们进行赋值、改变、计算等一系列操作,这一过程通常又叫称一个叫表达式来完成,可以说它是变量、常量、布尔及运算符的集合,因此表达式可以分
27、为算术表述式、字串表达式、赋值表达式以及布尔表达式等。、运算符运算符完成操作的一系列符号,在JavaScript中有算术运算符,如、-、*、/等;有比较运算符如!、等; 有逻辑布尔运算符如!(取反)、|、|; 有字串运算如 、 等。在JavaScript主要有双目运算符和单目运算符。其双目运算符由下列组成:操作数 运算符 操作数即由两个操作数和一个运算符组成。如5040、This+that等。单目运算符,只需一个操作数,其运算符可在前或后。()算术运算符JavaScript中的算术运算符有单目运算符和双目运算符。双目运算符:+(加) 、-(减)、 *(乘)、 /(除)、 %(取模) 、|(按位
28、或)、&(按位与)、<<(左移)、 >>(右移)、 >>>(右移,零填充)。单目运算符:-(取反)、(取补)、+(递加1)、-(递减1)。()比较运算符比较运算符它的基本操作过程是,首先对它的操作数进行比较,尔后再返回一个true或False值,有个比较运算符:<(小于)、>(大于)、<=(小于等于)、>=(大于等于)、=(等于)、!=(不等于)。()布尔逻辑运算符在JavaScript中增加了几个布尔逻辑运算符:!(取反)、&=(与之后赋值)、 &(逻辑与)、 |=(或之后赋值)、 |(逻辑或)、 =(
29、异或之后赋值)、 (逻辑异或)、 ?:(三目操作符)、|(或)、=(等于)、|=(不等于)。其中三目操作符主要格式如下:操作数?结果:结果若操作数的结果为真,则表述式的结果为结果,否则为结果。四、范例下面是一个跑马灯效果的JavaScript文档。<html><head><script Language=JavaScript>var msg=这是一个跑马灯效果的JavaScript文档;var interval = 100;var spacelen = 120;var space10= ;var seq=0;function Scroll() len = msg.length;window.status = msg.substring(0, seq+1);seq+;if ( seq >= len ) seq = spacelen;window.setTimeout(Scroll2();, interval );elsewindow.setTimeout(Scroll();, interval );function Scroll2() var out=;for (i=1; i<=spacelen/space10
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1