Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaScript中定义对象变量结构?_Javascript_Object_Definition - Fatal编程技术网

如何在JavaScript中定义对象变量结构?

如何在JavaScript中定义对象变量结构?,javascript,object,definition,Javascript,Object,Definition,我想定义类似于以下对象结构的内容,以便可以从多个源中填充它。我需要什么语句来定义它 Offices[]和它下面的rel[]一样是一个开放式阵列。所有元素都是字符串,也可能是数字 Offices.name Offices.desc Offices.rel.type Offices.rel.pt 如果我理解正确,您希望在Office阵列中放置多个相同类型的对象。为了轻松构建相同类型的多个对象,可以使用构造函数: function Office(name, desc, rel){ this.na

我想定义类似于以下对象结构的内容,以便可以从多个源中填充它。我需要什么语句来定义它

Offices[]
和它下面的
rel[]
一样是一个开放式阵列。所有元素都是字符串,也可能是数字

Offices.name
Offices.desc
Offices.rel.type
Offices.rel.pt

如果我理解正确,您希望在Office阵列中放置多个相同类型的对象。为了轻松构建相同类型的多个对象,可以使用构造函数:

function Office(name, desc, rel){
  this.name = name;
  this.desc = desc;
  this.rel = rel;
}
现在,您可以声明一个数组来保存上述类型的实例:

var offices = [];
您可以添加如下新实例:

offices.push(new Office('John', 'good guy', []));
您可以将相同的思想应用于rel数组以强制执行对象的结构,或者简单地使用对象和数组文本:

offices.push(new Office('John', 'good guy', [{ type : 'M', pt : 3 }, { type : 'Q', pt : 2 }]);

首先,我将制作
办公室
阵列:

var Offices = [];
然后用对象填充该对象:

var obj = {
    name: "test",
    desc: "Some description",
    rel: []
}

Offices.push(obj);

现在,您的数组(
Offices
)中填充了一个对象,因此您可以通过
Offices[0].desc
访问它——您还可以使用
Offices[0].rel.push(anotherObj)

填充
rel
数组。您可能需要从基本JavaScript语法的参考开始。