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

JavaScript 创建对象

2018-03-08 15:53 267 查看

JavaScript创建对象

工厂模式

工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程。
考虑到在ECMAScript中无法创建类,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节。


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


构造函数模式

ECMAScript中的构造函数可以用来创建特定类型的对象。像Object和Array这样的原生构造函数,在运行时会自动出现在执行环境中。此外,也可以创建自定义的构造函数,从而定义自定义对象类型的属性和方法。


例子:
function Person(name, age, job){
this.name = name;
this.age = age;
this.job = job;
this.sayName = function(){
alert(this.name);
}
}
var person1 = new Person("nichilas", 29, "software Engineer");
var person2 = new Person("Greg",27,"Doctor");


在这个例子中,Person()函数取代了createPerson()函数。
他们之间的不同:
没有显示的创建对象;
直接将属性和方法赋给了this对象;
没有return语句


原型模式

使用构造函数的prtotype属性来指定那些应该共享的属性和方法。组合使用构造函数模式和原型模式时,使用构造函数定义实例属性,而使用原型定义共享的属性和方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: