function New(aClass, aParams)   //创建对象的函数,用于任意类的对象创建
  {// New(Person, ["Bill Gates", 53]);
        function new_()     //创建对象的临时函数壳
        {
            this.Type = aClass;    //我们也给每一个对象约定一个Type属性,据此可以访问到对象所属的类
            if (aClass.Create)
              aClass.Create.apply(this, aParams);   //我们约定所有类的构造函数都叫Create,这和DELPHI比较相似
        };
        new_.prototype = aClass;
        return new new_();
    }; 
 
  aClass.Create.apply(this, aParams);   //我们约定所有类的构造函数都叫Create,这和DELPHI比较相似
 
 
 Create. 这个是系统提供的么
 
什么意思

解决方案 »

  1.   

    Create 应该是aClass对象的一个方法,不是js自带的。
    aClass.Create.apply(this, aParams),是以当前对象(this)来调用aClass的Create方法。
      

  2.   

    function classCreate()
    {
        return function()
        {
             this.Create.apply(arguments);
        }
    }
    var A = classCreate(aa, bb);A.prototype =
    {
        Create: function(aa, bb)
        {
            this._aa = aa;
            this._bb = bb;
        }
    }new A("aa", "bb");
      

  3.   

    那不是系统的, 是自定义的。
    难道楼主在看prototype???
    aClass.Create.apply这是prototype风格的写法
      

  4.   

    Create. 这个是系统提供的么 不是
    if (aClass.Create) 
                  aClass.Create.apply(this, aParams); ---------------------------
    从代码就可以看出来判断aClass对象是否有 .Create 属性
      

  5.   

    Create 有点工厂方法的意思