我想定義類似於以下對象結構的東西,所以我可以從多個來源填充它。我需要什麼聲明來定義它?如何在JavaScript中定義對象變量結構?
Offices[]
是一個開放式數組,其下是rel[]
。所有的元素都是字符串或數字。
Offices.name
Offices.desc
Offices.rel.type
Offices.rel.pt
我想定義類似於以下對象結構的東西,所以我可以從多個來源填充它。我需要什麼聲明來定義它?如何在JavaScript中定義對象變量結構?
Offices[]
是一個開放式數組,其下是rel[]
。所有的元素都是字符串或數字。
Offices.name
Offices.desc
Offices.rel.type
Offices.rel.pt
首先我會做Offices
數組:
var Offices = [];
然後填充與對象:
var obj = {
name: "test",
desc: "Some description",
rel: []
}
Offices.push(obj);
現在,你有你的填充一個對象數組(Offices
),所以你可以通過Offices[0].desc
訪問它 - 您也可以使用Offices[0].rel.push(anotherObj)
填充rel
陣列
如果我理解正確,您希望將多個相同類型的對象放置在Offices數組中。爲了便於建立多個相同類型的對象,你可以使用一個構造函數:
function Office(name, desc, rel){
this.name = name;
this.desc = desc;
this.rel = rel;
}
現在,你可以聲明一個數組來保存上述類型的實例:
var offices = [];
,你可以添加新像這樣的實例:
offices.push(new Office('John', 'good guy', []));
可以應用同樣的想法的相對陣列執行的對象的結構,或簡單地使用對象和數組文本:
offices.push(new Office('John', 'good guy', [{ type : 'M', pt : 3 }, { type : 'Q', pt : 2 }]);
那麼你可能想從關於基本JavaScript語法的參考開始。 – Pointy