AJAX中JavaScript支持面向对象的基础
日期:2007年7月6日 作者: 查看:[大字体 中字体 小字体]-
在面向对象的思想中,最核心的概念之一就是类。一个类表示了具有相似性质的一类事物的抽象,通过实例化一个类,可以获得属于该类的一个实例,即对象。
在JavaScript中定义一个类的方法如下:
function class1(){
//类成员的定义及构造函数
}
这里class1既是一个函数也是一个类。可以将它理解为类的构造函数,负责初始化工作。
使用new操作符获得一个类的实例
在前面介绍基本对象时,已经用过new操作符,例如:
new Date();
表示创建一个日期对象,而Date就是表示日期的类,只是这个类是由JavaScript内部提供的,而不是由用户定义的。
new操作符不仅对内部类有效,对用户定义的类也同样有效,对于上节定义的class1,也可以用new来获取一个实例:
function class1(){
//类成员的定义及构造函数
}
var obj1=new class1();
抛开类的概念,从代码的形式上来看,class1就是一个函数,那么是不是所有的函数都可以用new来操作呢?是的,在JavaScript中,函数和类就是一个概念,当对一个函数进行new操作时,就会返回一个对象。如果这个函数中没有初始化类成员,那就会返回一个空的对象。例如:
//定义一个hello函数
function hello(){
alert("hello");
}
//通过new一个函数获得一个对象
var obj=new hello();
alert(typeof(obj));
从运行结果看,执行了hello函数,同时obj也获得了一个对象的引用。当new一个函数时,这个函数就是所代表类的构造函数,其中的代码被看作为了初始化一个对象。用于表示类的函数也称为构造器。使用方括号([ ])引用对象的属性和方法
在JavaScript中,每个对象可以看作是多个属性(方法)的集合,引用一个属性(方法)很简单,如:
对象名.属性(方法)名
还可以用方括号的形式来引用:
对象名["属性(方法)名"]
注意,这里的方法名和属性名是一个字符串,不是原先点(? )号后面的标识符,例如:
var arr=new Array();
//为数组添加一个元素
arr["push"]("abc");
//获得数组的长度
var len=arr["length"];
//输出数组的长度
alert(len);

图1
图1显示了执行的结果。
由此可见,上面的代码等价于:
var arr=new Array();
//为数组添加一个元素
arr.push("abc");
//获得数组的长度
var len=arr.length;
//输出数组的长度
alert(len);
这种引用属性(方法)的方式和数组类似,体现了JavaScript对象就是一组属性(方法)的集合这个性质。
这种用法适合不确定具体要引用哪个属性(方法)的情况,例如:一个对象用于表示用户资料,用一个字符串表示要使用的那个属性,就可以用这种方式来引用:
<script language="JavaScript" type="text/javascript">
- [1] [2] [3] [4] 下一页
- AJAX中JavaScript支持面向对象的基础 相关文章:
- ·AJAX中JavaScript支持面向对象的基础
- AJAX中JavaScript支持面向对象的基础 相关软件
上一篇:WMLScript脚本程序设计
下一篇:写给XML初学者的一些话
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
精品推荐
热点TOP10
- ·Ajax实现分页查询
- ·用 AJAX 来控制书签和回退按钮
- ·jQuery语法总结和注意事项
- ·Asp.net Ajax--Calendar控件使用
- ·在Web2.0下的十大AJAX安全漏洞以及成因
- ·Ajax无刷新实现图片切换特效
- ·ASP.NET AJAX中的异步Web Services调用
- ·WebService 服务和ajax 使用教程一例
- ·.NET3.5和VS2008中的ASP.NET AJAX
- ·实例:AJAX编写用户注册实例及技术小结
- ·基于AJAX的动态树型结构的设计与实现
- ·利用AJAX技术实现网页无刷新进度条显示
- ·成功实现ajax,xmlhttp跨域访问
- ·在Struts 2中使用JSon ajax支持
- ·经典文章:过渡技术的Ajax及Apusic JSF
- ·JSP+AJAX多选、全选,添加、删除、更新多选框
- ·面向Java程序员的Ajax:构建动态Java程序
- ·经典文萃:Ajax技术的安全问题不容忽视
- ·用事实说话!AJAX应用程序开发七宗罪
- ·剖析ASP.NET AJAX的面向对象思想
特别推荐
