我想定义类似于以下对象结构的东西,所以我可以从多个来源填充它。我需要什么声明来定义它?如何在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