function TabControl(name,active)
{
this.name = name;
this.tabName = new Array();
this.tabDiv = new Array();
this.contentDiv = new Array();
this.activeTab = active;
return this;
}
不太明白
         this.name = name;
this.tabName = new Array();
this.tabDiv = new Array();
this.contentDiv = new Array();
this.activeTab = active;
到底是什么意思?
TabControl里边也没有这些属性啊

解决方案 »

  1.   


    “TabControl里边也没有这些属性啊”你说的TabControl是指什么呢?那里面写那么多,不就是因为它原本没有,所以才给它增加一些属性么?与构造函数唯一的不同就在于它最后一句的:return this。可以使此函数不需要new也可以直接具备那些属性,var a=TabControl('1','2');
    alert(a.name);
    alert(a.activeTab);
    如果没有最后那句return this,则必须构造了的实例才具备那些属性,否则内部的this不会指向TabControl
    var a=new TabControl('1','2');
    alert(a.name);
    alert(a.activeTab);
      

  2.   

    java中的类是这样的class TabControl(name, tabName, tabDiv, contentDiv, active) {
        privite string name = name;
        privite string tabName = tabName;
        privite string tabDiv = tabDiv;
        privite string contentDiv = contentDiv;
        privite string activeTab = activeTab;
    }左边定义属性,右边赋值js也是,不如java规整