| | | 在JavaScript中应用Object | | 2001-04-24·
·青苹果工作室(编译)··yesky
| 上一页 1 2 3 4 5 6 下一页 定义属性
现在对Sumthing函数进行些修改,让它接受一些变量:
<script language="JavaScript"> // object constructor function Sumthing(num1, num2) { // object properties this.alpha = num1; this.beta = num2; } </script>
现在 Sumthing对象有了两个属性:alpha和 beta。有了这两个属性,就有可能创建 Sumthing对象的一个例示,并向它传递两个参数("num1" 和 "num2"),然后将这两个参数作为对象属性存储("alpha" 和 "beta")。注意 关键字"this" 的用法,它简化了使用对象构造器“本地”变量(和函数)的代码。
接着使用下列代码测试一下:
<script language="JavaScript"> obj = new Sumthing(2, 89); alert("alpha is " + obj.alpha); alert("beta is " + obj.beta); </script>
运行后的结构如下:
定义方法
同定义对象属性一样,我们也可以定义对象的方法,本质上就是简单的JavaScript函数。下面对 Sumthing函数再进行一些修改,添加一个Add() 方法,它负责增加存储在 "alpha" 和"beta"中的值:
<script language="JavaScript">
// object constructor function Sumthing(num1, num2) {
// object properties this.alpha = num1; this.beta = num2;
// object methods this.Add = Add; }
// object method Add() - add arguments function Add() { sum = this.alpha + this.beta; return sum; }
</script>
这里有两个有趣的事情。首先,对象的方法Add() 实际上是在对象构造器模块的外部定义的,而且还可以使用"this"关键字来引用对象属性。其次,就象对象属性是用"this"定义的一样,对象方法也需要用同样方法来定义。
运行下面的测试代码,看看它是如何工作的:
<script language="JavaScript"> obj = new Sumthing(2, 89); alert("The sum of " + obj.alpha + " and " + obj.beta + " is " + obj.Add()); </script>
输出结果如下:
到此对象构造器就准备好了。下面快速演示一下如何用对象构造器为同一个对象生成多个例示,以及每个例示都能彼此独立运行:
<script language="JavaScript"> // one object obj1 = new Sumthing(2, 89); alert("The sum of " + obj1.alpha + " and " + obj1.beta + " is " + obj1.Add());
// another one obj2 = new Sumthing(546, 67); alert("The sum of " + obj2.alpha + " and " + obj2.beta + " is " + obj2.Add());
// and a third one obj3 = new Sumthing(2364237, 283457); alert("The sum of " + obj3.alpha + " and " + obj3.beta + " is " + obj3.Add()); </script>
对象应用例程
上一页 1 2 3 4 5 6 下一页 | | | 感谢
访问天极网,如果您觉得该文章涉及版权问题,请看这里!
|
|