一、JS设计模式
- 单例模式
- 工厂模式
- 构造函数模式
- 原型模式
- 构造函数 + 原型模式
- 观察者模式(订阅发布模式)
- 策略模式
- 代理模式
二、什么是设计模式?
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。
使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。
单例模式(用不同的命名空间,把相同的属性和方法分开) (单体模式/单子模式) ===> 常用来封装, 公用的方法
- 1.最简单的对象字面量 (存放信息 )
let person1 = { name: 'vue', age: 23 }; let person2 = { name: 'react', age: 25 }; - 2.单例模式 + 闭包, 高级单例模式
let tools = (function(){
let x = 1;
functoin Tabs() {
// => 生成单例的构造函数的代码
}
function fn() {
}
//return new Tabs();
return {
Tabs,
fn
}
})();
- 3封装
第一种:
let File = {
delete() {
return this; //==> 链式调用
},
update() {
return this;
},
addFile() {
return this;
}
};
File.delete().upate().addFle();
第二种: tools工具类的封装
let tools = (function(){
let o = {};
o.toastOk = function() {}
})();