16.3.4 对象的构造函数和方法
创建对象所用的构造函数是预定义的,如Object()可以用于创建一个空对象,而创建数组对象可以使用Array()构造函数。这些构造函数都是JavaScript内置的,配合new运算符以创建并初始化各种不同的内置对象。在实际程序设计中,也需要自定义对象,即自定义构造函数。如创建一个小狗的对象,即自定义一个构造函数为Dog()的对象类,通过向这个构造函数传递参数以初始化对象实例。不过构造函数只能初始化对象实例,而不返回对象实例,需要使用new运算符才能创建小狗的对象实例。
说明:在C#、C++和Java等面向对象程序设计中,使用类结构来定义对象的模板,而JavaScript比较简单,只需声明构造函数即可定义对象类。类是用于创建对象实例的一个模板,对象实例通过构造函数初始化,并继承一定的属性和方法。
在D:\web\目录下创建网页文件(XHTML1.0),命名为newfun.htm,编写newfun.htm文件代码如代码16.18所示。
代码16.18 构造函数:newfun.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML |
在浏览器地址栏输入http://localhost/newfun.htm,浏览效果如图16.23所示。
本例创建了2个对象实例,创建dogA对象实例时,通过向Dog()构造函数传递3个参数,其3个属性被初始化,函数体内的this关键字引用对象本身。也可以先创建对象实例,然后设置相应属性,dogB实例,对象实例的属性没有传递相应的值,其属性值为undefined。对象内的一切组成要素称作对象内部的成员,如果一个成员是函数,则称这个函数为对象的方法。方法即为通过对象调用的函数,可以完成特定的功能,和构造函数一样,方法内部的this关键字用于引用对象本身。
自定义对象的方法比较简单,只需要将自定义的函数赋值给对象的方法名即可,代码编写在构造函数中,用this引用对象。在D:\web\目录下创建网页文件(XHTML1.0),命名为newfun2.htm,编写newfun2.htm文件代码如代码16.19所示。
|
| 图16.23 自定义对象 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML |
将函数赋值给对象的方法名时,不需要(),否则赋值的内容是函数的返回值。在浏览器地址栏输入http://localhost/newfun2.htm,浏览效果如图16.24所示。
本例跳出的信息框是dogA对象调用了自定义的call()方法,该方法还使用了dogA对象的name属性。单击“确定”按钮后,浏览效果如图16.25所示。
|
| 图16.24 自定义对象方法 |
|
| 图16.25 方法执行完毕运行效果 |
| 回书目 上一节 下一节 |
|
· 08年5月软考网工上午真.. · 上周拒绝服务攻击(DDo.. · 08年5月各大网上书店及.. · 2008年5月24日软考试题.. · 软件设计师专家临考模.. · 上周网络管理员专家自.. |
· 网络工程师自测获奖名.. · 08年4月各大网上书店及.. · 系统分析师自测获奖名.. · Linux结课考试自测获奖.. · 上周Linux系统命令的使.. · 上周真题冲刺测试获奖.. |
|
||||
| · 技术人求职简历完备手册 · 访问控制列表(ACL)介绍 · 隐私保护技术探讨 · Windows Server 2008专.. · 华为员工自杀频频拷问.. · 勇闯IT培训黑色围城 · CISSP认证成长之路 · 解析35岁技术人的价值.. |
· 网络工程师职业规划与.. · LAMP技术精解 · AMD Phenom三核处理器.. · 充电计划之热门IT认证.. · 如何有效防御SQL注入攻.. · 2008年上半年全国软考.. · 选择适合自己的IT认证 · IPv6协议--拓展网络无.. |
|||
|
||||
| · SQL Server 2008/2005.. · SOA 面向服务架构 · SQL Server 2008/2005.. · iSCSI应用与发展 · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Apache技术专题 |
· 国际文档格式标准开战 · 路由器设置与口令恢复 · 打造安全服务器 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 · 了解统一威胁管理(UTM).. · 专题:AIX操作系统管理.. |
|||
|
||||
| · iSCSI应用与发展 · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · iSCSI应用与发展 · 三层交换技术专题 · Apache技术专题 |
· 企业数据恢复指南 · 路由器设置与口令恢复 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 · 访问控制列表(ACL)介绍 · PHP开发应用手册 · 专题:AIX操作系统管理.. |
|||