建造者模式
建造者模式可以将一个复杂对象的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。
主要用于"分步骤构建一个复杂的对象",在这其中"分步骤"是一个稳定的算法,而复杂对象的各个部分则经常变化。
作用和注意事项
作用:
1.分步创建一个复杂的对象
2.解耦封装过程和具体创建的组件
3.无需关心组件如何组装
注意事项:
1.一定要一个稳定的算法进行支撑
2.加工工艺是暴露的
代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> <script> //$.ajax就是一个建造者模式 /*$.ajax({ url:'a.php', success:function (argument) { } });*/ function Fangzi() { this.woshi = ''; this.keting = ''; this.chufang = ''; } function Baogongtou() { this.gaifangzi = function (gongren) { gongren.jian_chufang(); gongren.jian_keting(); gongren.jian_woshi(); } } function Gongren() { this.jian_woshi = function () { alert("woshi is ok!"); }; this.jian_keting = function () { alert("keting is ok!"); }; this.jian_chufang = function () { alert('chufang is ok!'); }; this.jiaogong = function () { var _fangzi = new Fangzi(); return _fangzi; } } var gongren = new Gongren; var baogongtou = new Baogongtou(); baogongtou.gaifangzi(gongren); var myfangzi = gongren.jiaogong(); console.log(myfangzi); </script> </body> </html>