《JS设计模式笔记》 2,简单工厂模式

 1 <script type="text/javascript">
 2     //简单工厂模式
 3     //定义:由一个方法来决定到底要创建哪个类的实例,而这些实例经常拥有相同的接口。其实例在编译的时候不确定,而是在执行的时候确定。
 4     var request1=Request("cgi.xx.com/xxx","get");
 5     request1.start();
 6     request1.done(fn);
 7     var request2=Request("cgi.xx.com//xxx","jsonp");
 8     request2.start();
 9     request2.done(fn);
10     //new 构造器 实际上就是简单工厂模式
11     function A (name) {
12         this.name=name;
13     }
14     function ObjectFactory(){
15         var obj={},
16         Constructor=Array.prototype.shift.call(arguments);
17         obj.__proto__=typeof Constructor.prototype==="number"?Object.prototype:Constructor.prototype;
18         var ret=Constructor.apply(obj,arguments);
19         return typeof ret==="object"?ret:obj;
20     }
21     var a=ObjectFactory(A,"svenzeng");
22     alert(a.name);
23     </script>
原文地址:https://www.cnblogs.com/lvyongbo/p/4699958.html