您的位置:首页 > Web前端 > JavaScript

JavaScript 构建类和创建对象的方式

2009-09-22 23:32 531 查看
1>工厂函数来创建对象(Factory)

    
function createCar(){
var obj = new Object;
obj.name = "BWM";
obj.show = function(){
alert(this.name);
}
return obj;
}

var car1 = createCar();
var car2 = createCar();

car1.show();
car2.show();


2>构造函数创建对象(Constructor)

    
function Car(name){
this.name = name;
this.show = function(){
alert(this.name);
}
}
Car.prototype.say = function(){
alert("hello");
}
var car = new Car("BMW");

car.show();
car.say();


3>原型(prototype)创建对象

     
function Car(){}
Car.prototype.name = "BMW";
Car.prototype.show = function(){
alert(this.name);
}
Car.prototype.say = function(){
alert("Hiloo");
}

var car = new Car();

car.show(); car.say();


4>构造 && 原型:推荐使用,但是理解起来有点模糊

    
/*
构造函数是来初始化非函数属性的
*/
function Car(name){
this.name = name;
}
Car.prototype.show = function(){
alert(this.name);
}

Car.prototype.say = function(){
alert("hiloo");
}

var car = new Car("BMW");
car.show(); car.say();


5>Dynamic Prototype:类似于java中类的创建,是学习过Java语言程序员常用的方式

   
function Car(name){
this.name = name;
if(typeof Car._initialized == "undefined"){
Car.prototype.show = function(){
alert(this.name);
}
Car._initialized = true;//改变目的是,执行一次
}
}
var car = new Car("BMW");
car.show();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息