1、new+Object创建
var person=new Object();
person.name="zzc";
person.fn=function(){
console.log("person的name是"+person.name);
};
person.fn() //person的name为zzc;
2、字面量
var person={
name:"pxl",
fn:function(){
console.log("person的name是"+person.name);
}
};
person.fn(); //person的name是pxl
3、工厂模式
function person(name,age){
var obj=new Object();
obj.name="lxy";
obj.age=age;
obj.fn=function(){
console.log("person的name是"+obj.name+",person的age是"+obj.age)
}
}
var createObj=person("zyl",26);
createObj.fn(); //person的name是lxy,person的age是26
-
特点:工厂模式虽然解决了多次实例化对象的问题,但并未解决识别对象的问题
4、构造函数
function person(name,sex){
this.name=name;
this.sex=sex;
this.fn=function(){
console.log("person的name是"+this.name+",person的sex是"+this.sex);
}
}
var createObj=new person("zzc","男") //person的name是zzc,person的sex是男