• js与设计模式简单工厂


    简单工厂模式是由一个方法来决定到底要创建哪个类的实例, 而这些实例经常都拥有相同的接口.
    这种模式主要用在所实例化的类型在编译期并不能确定, 而是在执行期决定的情况。
    比如ajax会有jsonp、get、post等方式的调用方法。
    var request1 = Request('cgi.xx.com/xxx' , ''get' );
    var request1 = Request('cgi.xx.com/xxx' , ''post' );
     
    以下代码为模拟js构造函数
    function ObjectFactory(){
          var obj = {},
        //把传入的参数当作数组保存在Constructor,call方法意为调用数组的shift方法执行arguments的内容
          Constructor = Array.prototype.shift.call( arguments );
        //郁闷,求大神指点
        obj.__proto__ =  typeof Constructor .prototype === 'number'  ? Object.prototype
    :  Constructor .prototype;
                  var ret = Constructor.apply( obj, arguments );
                  return typeof ret === 'object' ? ret : obj;
           }
       function A( name ){
                  this.name = name; 
           }
     
     var a = ObjectFactory( A, 'svenzeng' );
            alert ( a.name );  //svenzeng
     
    ObjectFactory函数模拟JavaScript的new的过程,就是一个工厂,传入A函数名,然后传入需要的参数,完成构造 。
  • 相关阅读:
    VMware安装Centos7超详细过程
    Linux部署Web项目
    Entity Framework快速入门IQueryable与IEnumberable的区别
    ASP.NET MVC3中的路由系统(Routes)
    C# Lambda表达式概述
    WCF大数据量传输解决要点
    div滚动条样式设计
    ASP.NET MVC 自定义路由
    C# Lambda表达式学习笔记
    C# 操作excel
  • 原文地址:https://www.cnblogs.com/bugluo/p/2779644.html
Copyright © 2020-2023  润新知