安全模式
可以屏蔽对类的错误使用而造成的后果
var Dome = function(){
if(!(this instanceof Dome)){
return new Dome();
}
}
Dome.prototype.show = ()=>{
console.log('看我漂亮?');
}
var d = Dome();
d.show();
简单工厂模式仅仅适用于创建比较少的对象,如果需要创建多个类,并且会经常修改,像我们之前说的简单工厂的方法就不是很实用了,因为如果我要多添加一个类,就需要修改两个地方,所以这里我们采用工厂方法模式
var Factory = function(type,content) {
if(this instanceof Factory){
var temp = new this[type](content);
}else{
return new Factory(type,content);
}
}
//在工厂原型中设置创建所有类型数据对象的基类
Factory.prototype = {
constructor:Factory,
Java:function(content) {
console.log(content);
},
JavaScript:function(content) {
console.log(content);
},
UI:function(content) {
console.log(content);
}
}
var data = [
{type:'JavaScript',content:'Javascript还是很重要的'},
{type:'Java',content:'Java培训哪家强'},
{type:'UI',content:'UI...'}
];
for(var i = 0,length=data.length;i<data.length;i++){
Factory(data[i].type,data[i].content);
}