动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   网页设计 → 阅读文章

 Javascript实例教程(5-2)

作者:郁郁小蝎 来源:中国站长学院 
阅读 数 531 人次 , 2006-2-15 14:47:00 

属性同样也可以从函数中来创建,这样,你只需要增加一行到Person函数中就可以创建属性了: function Person(name, age, colour) {

this.name = name;

this.age = age;

this.colour = colour;

this.birthYear = (new Date()).getYear() - this.age;

}

以上的Person函数定义了第四个属性:birthYear,它代表每一个Person的出生年份。这里要注意,这一增加的行是调用一个内置的Date构造器,它返回一个包含了当前日期和时间的Date对象。

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

var today = new Date();

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

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

这个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() 方法

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

}


function printPerson() {

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

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

return text;

}


function isOlder(otherPerson) { // 这里定义是否第一个人是更老的

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

}


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


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

var body2 = new Person("Betty", 21, "green");


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

document.write(body2);


document.write(body1.name);

document.write((body1.isOlder(body2)) ? " is " : " is not "); // 是否更老?

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


// Stop hiding -->

</SCRIPT>
  
 本文Tags组网  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:Javascript实例教程(5-1)
· 下一篇:Javascript实例教程(5-3)
· Java咖啡馆:情人节的Applet(三)
· Dreamweaver经典问题大搜罗(九)
· 打印网页时去掉页眉页脚
· 精彩网页九“慎”
· Java咖啡馆——叹咖啡(4)


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077