我可以在javascript中的自定义对象中存储自定义数据类型数组吗

我可以在javascript中的自定义对象中存储自定义数据类型数组吗,javascript,arrays,custom-object,custom-data-type,Javascript,Arrays,Custom Object,Custom Data Type,我需要一个职员的自定义对象,所以我在staff.js中有这样的内容: function Staff(name, shouldBeRemoved, officeName, dateHired) { this.name = name; this.shouldBeRemoved = shouldBeRemoved; this.officeName = officeName; this.dateHired = dateHired;

我需要一个职员的自定义对象,所以我在staff.js中有这样的内容:

    function Staff(name, shouldBeRemoved, officeName, dateHired) {
        this.name = name;
        this.shouldBeRemoved = shouldBeRemoved;
        this.officeName = officeName;
        this.dateHired = dateHired;
    }
我在Office.js中还有一个用于Office的自定义对象:

    function Office(name, shouldBeRemoved, staffMembers) {
        this.name = name;
        this.shouldBeRemoved = shouldBeRemoved;
        this.staffMembers = staffMembers;
    }
我想将staffMembers属性用作办公室内的Staff对象数组

但是,当我尝试将新staff对象推入Office对象中的staffMembers数组时,什么也没有发生:

staff = new Staff(name, false, officeSelected, d.toDateString());
        for (i=0; i<officeArray.length; i++) {
            if (officeArray[i].name == officeSelected) {
                officeArray[i].staffMembers.push(staff);
            }
        }
staff=新员工(姓名,false,officeSelected,d.toDateString());

对于(i=0;i我的建议是开始使用Typescript,原因是数据类型和类有一个清晰的画面

 staff = new Staff(name, false, officeSelected, d.toDateString());
    for (i=0; i<officeArray.length; i++) {
        if (officeArray[i].name == officeSelected) {
            officeArray[i].staffMembers.push(staff);
        }
    }
staff=新员工(姓名,false,officeSelected,d.toDateString());

对于(i=0;i“什么都没发生”是什么意思?
officeArray[i]行。staffMembers.push(staff)
不运行。之后什么也不会运行。如果我尝试打开一个警报窗口,它将不会打开。你有js fiddle吗?你的控制台怎么说?你有错误还是staffMembers为null?不,我从来没有使用过js fiddle,我会尝试。我认为staffMembers只是null。让我看看是否能找到答案。(对不起,我对javascript有点陌生)正在报告错误?Office
实例的构造是什么样子的;
staffMembers
是否已初始化为新的空数组?