首页 理论教育基于JSP的Web网站构建与程序设计实训教程

基于JSP的Web网站构建与程序设计实训教程

【摘要】:从这个例子可以看出定义对象要定义构造函数,其中包含各个属性成员和方法成员。this表示本对象,必须使用。对象定义好后还不能直接使用,要使用对象,必须先用保留字new创建对象的实例,创建对象实例的语句如下:对象名就是构造函数名。给构造函数赋不同的实参数初值就可以构造出不同的对象实例。E_js_23.htm:图3-15 自定义对象

用户自定义对象包括定义对象的属性和定义对象的方法两部分,可以通过例子来说明。下面构造的是一个简单的“电视机”的对象:

978-7-111-38219-5-Chapter03-79.jpg

上例中,函数TV称为对象TV的构造函数,它有两个属性成员:this.n和this.color;一个属性方法:this.channel,它的值是另一个函数名channel,函数channel的作用是改变电视频道并输出。从这个例子可以看出定义对象要定义构造函数,其中包含各个属性成员和方法成员。方法成员还要用另外的普通函数来定义。this表示本对象,必须使用。

对象定义好后还不能直接使用,要使用对象,必须先用保留字new创建对象的实例,创建对象实例的语句如下:

978-7-111-38219-5-Chapter03-80.jpg

对象名就是构造函数名。给构造函数赋不同的实参数初值就可以构造出不同的对象实例。如:

978-7-111-38219-5-Chapter03-81.jpg

这就建立了两个对象实例TV1(一台红色的电视机,1频道)和TV2(另一台绿色的电视机,3频道)。有了对象实例就可以引用对象实例中的属性成员(变量)和方法成员(函数)了。属性成员的引用格式如下:

对象实例名.属性成员名或

对象实例名[属性成员名]

方法成员的引用格式如下:

对象实例名.方法成员名

例如:

978-7-111-38219-5-Chapter03-82.jpg

在JS的流程控制语句中,有两条是有关对象操作的:“forin”语句和“with”语句。

forin语句的格式如下:(www.chuimin.cn)

978-7-111-38219-5-Chapter03-83.jpg

这是一条循环语句,用于对已有对象实例中所有属性(属性成员和属性方法)进行操作的循环控制,它将一个对象的所有属性依次置给变量来实现循环,而不是使用计数器来实现循环。

with语句的格式如下:

978-7-111-38219-5-Chapter03-84.jpg

引用对象实例的属性时,要在属性前加上对象实例名,属性较多时,使用起来较麻烦。可使用with语句简化书写形式。例如:

978-7-111-38219-5-Chapter03-85.jpg

另外,在JavaScript中,用保留字prototype可以向已定义的对象中添加属性而不用重写构造函数。例如,向“电视机”对象TV添加一个亮度的属性bright,语句如下:

978-7-111-38219-5-Chapter03-86.jpg

这样,在该语句之前或之后创立的所有TV实例对象都会具有属性bright,并且其值为36。

程序“E_js_23.htm”中示例了对象的定义、生成和属性、方法的引用。使用“记事本”输入下面的“E_js_23.htm”程序并存放在应用目录“webapps/ROOT/E23”下。在浏览器地址栏中输入:http://192.168.2.1:8080/E23/E_js_23.htm,则浏览器窗口显示如图3-15所示。

E_js_23.htm:

978-7-111-38219-5-Chapter03-87.jpg

978-7-111-38219-5-Chapter03-88.jpg

978-7-111-38219-5-Chapter03-89.jpg

图3-15 自定义对象