虽然Object构造函数和对象字面量都可以创建单个对象,但这个方式有个明显的缺点:使用同一个接口创建很多对象,会产生大量重复代码。
优点
用函数封装以特定接口创建对象的细节,使用一个接口,能同时创建多个相似对象
示例
var createPerson = function(name, age) {
var obj = new Object();
obj.name = name;
obj.age = age;
obj.sayName = function() {
return this.name;
};
return obj;
};
var person1 = createPerson('duke', 22);
var person2 = createPerson('dome', 24);
var person3 = new createPerson('dome3', 24);
console.log('person1=>', person1);
console.log('person2=>', person2);
console.log('person3=>', person3);
缺点
虽然解决了创建多个相似对象的问题,但无法解决对象识别的问题,即无法知道具体对象的类型
网友评论