JavaScript学习——创建对象

1.工厂模式

function createPerson(name,age,job){
var o=new Object();
o.name=name;
o.age=age;
o.job=job;
o.sayName=function(){
alert(this.name);
};
return o ;
}
var person1=createPerson("NIcholas",29,"Software Engineer");
var person2=createPerson("Greg",27,"Doctor");

工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题。

2.构造函数模式

function Person(name,age,job){
this.name=name;
this.age=age;
this.job=job;
this.sayName=function(){
alert(this.name);
};
}
var person1=Person("NIcholas",29,"Software Engineer");
var person2=Person("Greg",27,"Doctor");

区别:

没有显式地创建对象

直接将属性和方法赋给了this对象

没有return语句

3.原型模式

//待续

原文地址:https://www.cnblogs.com/pilee/p/3447489.html