This Domain(Admin5.com) is for Sale:

Javascript实例教程(5) 利用Javascript创建对象

时间:2007-10-22  来源:不详  作者:林子

这是一个非常懒惰的方法来访问一个Date变量。所以使用下面的代码会显得更准确些,更有可读性:

织梦好,好织梦

var today = new Date(); 内容来自dedecms

this.birthYear = today.getYear() - this.age;

织梦好,好织梦

当然,有许多方法来对javascript程序进行“压缩”。通过插入对象到代码中,你就可以处理绝大多数的变量。

copyright dedecms

这个Date对象比起我们上面定义的Person对象来说更复杂,因为它包括了访问方法(accessor/get)以及操作方法(manipulator/set)。同时,增加简单的对象方法到javascript中是可能,下面是详细的例子代码: 本文来自织梦

<SCRIPT language="javascript">

织梦好,好织梦

<!-- Hide from older browsers 本文来自织梦

function Person(name, age, colour) {

织梦好,好织梦

this.name = name;

本文来自织梦

this.age = age;

织梦好,好织梦

this.colour = colour;

织梦内容管理系统

this.birthYear = (new Date()).getYear() - this.age; 本文来自织梦

this.toString = printPerson; // 这里定义the Person.toString() 方法

内容来自dedecms

this.isOlder = isOlder; // 这里定义Person.isOlder(Person) 方法

dedecms.com

}

本文来自织梦

function printPerson() { 织梦内容管理系统

var text = this.name " was born in " this.birthYear "<br>"; dedecms.com

text = "and is " this.age " years old.<p>";

本文来自织梦

return text;

copyright dedecms

}

本文来自织梦

function isOlder(otherPerson) { // 这里定义是否第一个人是更老的 织梦内容管理系统

return (this.age > otherPerson.age); // 返回布尔型数值 织梦好,好织梦

} 内容来自dedecms

file://下面的代码用于测试我们的函数

dedecms.com

var body1 = new Person("Patrick", 22, "red");

dedecms.com

var body2 = new Person("Betty", 21, "green"); 织梦内容管理系统

document.write(body1); file://这里为Person.toString()创建一个调用 copyright dedecms

document.write(body2);

织梦内容管理系统

document.write(body1.name); 内容来自dedecms

document.write((body1.isOlder(body2)) ? " is " : " is not "); // 是否更老? 织梦内容管理系统

document.write("older than " body2.name);

内容来自dedecms


// Stop hiding -->

copyright dedecms

</SCRIPT>

dedecms.com



内容来自dedecms

通过为Person对象重载Person.toString()方法,我们可以将Person对象作为字符串显示出来。每当Person对象被作为字符串引用的时候,pringPerson返回的数值就决定了该显示什么了。 本文来自织梦

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息