Javascript工厂模式:函数createPerson(...
2016-07-09 09:23
351 查看
工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程。考虑到在ECMAScript中无法创建类,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节,如下面的例子所示:
函数createPerson()能够根据接受的参数来构建一个包含所有必要信息的Person对象。可以无数次地调用这个函数,而每次它都返回一个包含三个属性一个方法的对象。工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题(即怎样知道一个对象的类型)。随着JavaScript的发展,又一个新的模式出现了。
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"); person1.sayName(); //"Nicholas" person2.sayName(); //"Greg"
函数createPerson()能够根据接受的参数来构建一个包含所有必要信息的Person对象。可以无数次地调用这个函数,而每次它都返回一个包含三个属性一个方法的对象。工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题(即怎样知道一个对象的类型)。随着JavaScript的发展,又一个新的模式出现了。
相关文章推荐
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- Javascript工厂模式:函数createPerson(...
- json基础
- JStorm环境搭建
- .net 实体类与json转换(.net自带类库实现)
- 数组reduce方法的高级技巧
- JavaScript基础重点(必看)
- 深入浅析JavaScript中的Function类型
- 老生常谈onBlur事件与onfocus事件(js)
- JavaScript基础知识点归纳(推荐)
- JavaScript跨域调用基于JSON的RESTful API
- 深入浅析JavaScript函数前面的加号和叹号