JavaScript是基于对象(object-based)的语言。这与Java不同,Java是面向对象的语言。而基于对象的基本特征,就是采用事件驱动(event-driven)。它是在用形界面的环境下,使得一切输入变化简单化。通常鼠标或热键的动作我们称之为事件(Event),而由鼠标或热键引发的一连串程序的动作,称之为事件驱动(Event Driver)。而对事件进行处理程序或函数,我们称之为事件处理程序(Event Handler)。
一 ,JavaScript基本数据结构
1.四种基本的数据类型:数值(整数和实数)、字符串型(用“”号或‘’括起来的字符或数值)、布尔型(使True或False表示)和空值。(JavaScript采用弱类型的形式)
2.布尔常量:JavaScript只能用True或False表示其状态,不可以用1或0。
3.不能使用JavaScript中的关键字作为变量。
二,JavaScript程序构成
1.函数名对大小写是敏感的。
2.可通过arguments .Length来检查参数的个数。
Function function_Name(exp1,exp2,exp3,exp4)
Number =function _Name . arguments .length;
3、事件驱动
(1)单击事件onClick:button, checkbox, radio, reset buttons, submit buttons。
(2)onChange改变事件:text,texturea,select。
(3)选中事件onSelect:Text,Textarea对象中的文字被加亮后,引发该事件。
(4)获得焦点事件onFocus:Text,textarea,select。
(5)失去焦点onBlur:text,textarea,select;与onFocas事件是一个对应的关系。
(6)载入文件onLoad:当文档载入时,首次载入一个文档时检测cookie的值。
(7)卸载文件onUnload:当Web页面退出时,可更新Cookie的状态。
4.获取WEB浏览器
浏览器名称: navigator.appName;
版本号: navigator.appVersion;
代码名字:navigator.appCodeName;
用户代理标识: navigator.userAgent;
三,基于对象的JavaScript语言
之所以说它是一门基于对象的语言,主要是因为它没有提供象抽象、继承、重载等有关面向对象语言的许多功能。
1.几个用于操作对象的语句和关键字及运算符。
(1)For(对象属性名 in 已知对象名):
该语句的功能是用于对已知对象的所有属性进行操作的控制循环。它是将一个已知对象的所有属性反复置给一个变量;而不是使用计数器来实现的。该语句的优点就是无需知道对象中属性的个数即可进行操作。
for(var prop in object) document.write(object[prop]);
(2) with语句:with object{...}
(3) this关键字
(4) New运算符:可以创建一个新的对象。
Newobject=NEW Object(Parameters table);
birthday=New Data (December 12.1998)
其中Newobject创建的新对象:object是已经存在的对象; parameters table参数表;new是JavaScript中的命令语句。
2.串对象:内部静态性;可使用(.)访问properties和methods;
(1)只有一个属性,即length。
(2)串对象的方法(19个)
3.算术函数的math对象:静态对象
(1)主要方法:四舍五入:round(),平方根:sqrt()
4.日期及时间对象:动态性,即必须使用New运算符创建一个实例。
(1)日期起始值:1770年1月1日00:00:00。
(2)getYear() --> getTime() :返回年数 --> 毫秒数
(3)setYear() --> setTime () :设置年 --> 毫秒数
5.系统函数
(1)eval(字串表达式)返回字符串表达式中的值:test=eval("8+9+5/2")。
(2)escape(character)返回字符的编码。
(3)unEscape (string)返回字符串ASCI码。
(4)parseFloat(floustring);返回不同进制的数:parseInt(numbestring ,rad.X)。
四,在JavaScript中创建新对象
(1)以下是一个关于University对象的定义:
Function university(name,city,creatDate URL)
This.name=name
This.city=city
This.creatDate=New Date(creatDate)
This.URL=URL
(2)创建对象实例
U1=New university(“云南电子科技大学”,“昆明”,"January 07,1997 12:00:00","htlp://www.YNKJ.CN")
(3)对象方法的使用
This.showuniversity=showuniversity;
function showuniversity() For (var prop in this) alert(prop+="+this[prop]+"");
五,JavaScript对象系统的使用
1.document 核心/最重要
(1)三个最重要的对象:links,anchor,form。
(2)链接数目保存在document.links.length中。
(3)所有“锚”的数目保存在document.anchors.length中。
六,JavaScript窗口及输入输出
1.alert()方法能创建一个具有OK按钮的对话框。
具有OK和Cancel按钮的对话框
2.confirm()方法为编程人员提供一个具有两个按钮的对话框。
具有输入信息的对话框
3.prompt()方法允许用户在对话框中输入信息,并可使用默认值,其基本格式如下prompt(“提示信息”,默认值)。
4.document.open() / Window. Open()
5.write()和writeln()就是用于将文本信息直接输出到浏览器窗口中的方法。
七,用JavaScript脚本实现Web页面信息交互
1.什么是窗体对象
窗体(Form):它构成了Web页面的基本元素。通常一个Web页面有一个窗体或几个窗体,使用Forms[]数组来实现不同窗体的访问。
(1)窗体对象的方法只有一个--submit()方法,该方法主要功用就是实现窗体信息的提交。
(2)窗体对象中的属性主要包括以下:elements name action target encoding method.
2.窗体中的基本元素
(1)Text,textarea
基本方法:
select():加亮文字。
主要事件:
Onselect:当文字被加亮显示后,产生该文件。
onchange:当Text元素值改变时,产生该文件。
八,用JavaScript实现更复杂的交互
1.什么是框架
框架Frames最主要功用是"分割"视窗,使每个"小视窗"能显示不同的HTM L文件,不同框架之间可以互动(interact),这就是说不同框架之间可以交换讯息与资料。
框架可以将屏幕分割成不同的区域,每个区域有自己的URL,通过Frames[]数组对象来实现不同框架的访问。实际上框架对象本身也一类窗口,它继承了窗口对象的所有特征,并拥有所有的属性和方法。
2.如何访问框架
父框架集中为每一个子框架设有一项。通过下标实现不同框架的访问:
parent.frames[Index1].docuement.forms[index2]
通过parent.frames.length确定窗口中窗体的数目。 除了使用数组下标来访问窗体外还可以使用框架名和窗体名来实现各元素的访:
parent.framesName.decument.formNames.elementName.(m/p)
3.框架范例
------框架页
<HTML>
<HEAD>
主调文档
</HEAD>
<Frameset Rows="10%,90%">
<frame src="test9_1.htm">
<Frameset Cols="40%,60%">
<frame src="test9_2.htm">
<frame src="test9_3.htm">
</Frameset>
</Frameset>
</HTML>
------Test9_1.htm
<HTML>
<HEAD>
</HEAD>
<H2>使用框架实现WEB交互</H2>
</HTML>