前言


我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷


导语


简单工厂模式


#yyds干货盘点# 【js学习笔记三十九】简单工厂模式_无法识别

代码部分

// 简单的工厂模式可以理解为解决多个相似的问题
function CreatePerson(name,age,sex){
//创建一个新的对象
// var obj=new Object();
this.name = name;
this.age=age
this.sex=sex
this.say=function(){
return "我是可爱的人"
}
}
var p1 = new CreatePerson("geyao",'18','男');
var p2 = new CreatePerson("fangfang",'18','女');
console.log(p1.name); // geyao
console.log(p1.age); // 18
console.log(p1.sex); // 男
console.log(p1.say()); // 我是可爱的人

console.log(p2.name); // fangfang
console.log(p2.age); // 18
console.log(p2.sex); // 女
console.log(p2.say()); // 我是可爱的人

#yyds干货盘点# 【js学习笔记三十九】简单工厂模式_无法识别_02

总结


// 返回都是object 无法识别对象的类型 不知道他们是哪个对象的实列

// console.log(typeof p1);  // object

// console.log(typeof p2);  // object

// console.log(p1 instanceof Object); // true


// 如上代码:函数CreatePerson能接受三个参数name,age,sex等参数,可以无数次调用这个函数,每次返回都会包含三个属性和一个方法的对象。


// 工厂模式是为了解决多个类似对象声明的问题;也就是为了解决实列化对象产生重复的问题。


// 优点:能解决多个相似的问题。


// 缺点:不能知道对象识别的问题(对象的类型不知道)。