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. 这个是系统提供的么
什么意思
{// 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. 这个是系统提供的么
什么意思
aClass.Create.apply(this, aParams),是以当前对象(this)来调用aClass的Create方法。
{
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");
难道楼主在看prototype???
aClass.Create.apply这是prototype风格的写法
if (aClass.Create)
aClass.Create.apply(this, aParams); ---------------------------
从代码就可以看出来判断aClass对象是否有 .Create 属性