无法创建对象数组

时间:2013-12-12 09:55:05

标签: javascript arrays object

我对使用javascript的面向对象编程有点新意。

我有一个工作区数组

//global var
var workspaceArray = new Array();

然后我将数组中的工作空间对象推送为 -

//in some function
workspaceArray.push(new wsObj());

//wsObj function
function wsObj(){
    states = new Array();
    links = new Array();
}

但是当我尝试在某处使用它时会抛出无法读取属性状态的错误。

//error in the following line
var stateName = "q" + "<sub>" + workspaceArray[activeWSId].states.length + "</sub>";

提前致谢。

1 个答案:

答案 0 :(得分:2)

您创建stateslinks作为全局变量,而不是将它们分配给创建的Object。像这样分配它们

//wsObj function
function wsObj(){
    this.states = new Array();
    this.links = new Array();
}

它会起作用!