<script>
var a = new Car('red',4,Array('first'));//传递的第三个参数是数组
a.addDriver('lilei');
a.addDriver('lisi');
a.getDrivers();
var b = new Car('red',3,Array());
b.addDriver('blilei');
b.addDriver('blisi');
b.getDrivers();
function Car(color, doors, drivers){
this.color = color;
this.doors = doors;
this.drivers = drivers;
if (typeof Car._initialized == 'undefined'){//使用原型属性判断对象是否已经实例化过,以避免重复生成方法(共享方法),这是javascript不同于java等编程语言的地方,因为javascript没有“类”的概念,只是逻辑上这些东西和类是一样的。
Car._initialized = true;
Car.prototype.addDriver = function(driver){
this.drivers.push(driver);
};
Car.prototype.showColor = function(){
alert(this.color);
};
Car.prototype.showDoor = function(){
alert(this.doors);
};
Car.prototype.getDrivers = function(){
alert(this.drivers.toLocaleString());
};
}
}
</script>