JavaScript中定义类或对象
2009-10-25 00:00:00 来源:WEB开发网(4)混合的构造函数/原型方式
function Car(sColor, iDoors) {
this.color = sColor;
this.doors = iDoors;
this.drivers = new Array("Mike", "Sue");
}
Car.prototype.showColor = function() {
alert(this.color);
};
var oCar1 = new Car("red", 4);
var oCar2 = new Car("blue", 3);
oCar1.drivers.push("Matt");
alert(oCar1.drivers); //output "Mike,Sue,Matt"
alert(oCar2.drivers); //output "Mike,Sue
现在就响创建一般对象一样,所有的非函数属性都在构造函数中创建,而且只创建一个showColor()函数。此外,给oCar1的drivers数组添加“Matt”值,不会影响oCar2的数组。
因此这种方式是ECMAScript采用的主要方式。它具有其他方式的特性,却没有它们的副作用。
(5)动态原型方式
function Car(sColor, iDoors) {
this.color = sColor;
this.doors = iDoors;
this.drivers = new Array("Mike", "Sue");
if (typeof Car._initialized == "undefined") {
Car.prototype.showColor = function() {
alert(this.color);
};
Car._initialized = true;
};
}
目前使用最广泛的是混合的构造函数/原型方式。此外,动态原型方式也很流行。
Tags:JavaScript 定义 对象
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接