js中的对象数组?

Ste*_*fin 0 javascript

这是一个愚蠢的问题,但这是js中的一系列对象吗?

var test = 
   { 
      Name: "John", 
      City: "Chicago",
      Married: false
   }
Run Code Online (Sandbox Code Playgroud)

如果是的话,我该如何宣布一个新的......我不这么认为

var test = new Object();  
Run Code Online (Sandbox Code Playgroud)

要么

var test = {}; 
Run Code Online (Sandbox Code Playgroud)

与我上面的例子相同.

SLa*_*aks 9

不.
这是一个有三个属性的对象.

对象文字只是创建空对象和分配属性的快捷方式:

var test = { };   //or new Object()
test.name = "John";
test.city = "Chicago"
test.married = false;
Run Code Online (Sandbox Code Playgroud)


pun*_*lly 6

一个对象数组将是

myArray = [
    { prop1 : "val1", prop2 : "val2" },
    { prop1 : "A value", prop2 : "Another value" }
]
Run Code Online (Sandbox Code Playgroud)

prop2您将像这样访问第一个对象的属性

myArray[0].prop2
Run Code Online (Sandbox Code Playgroud)

“如果是这样,我该如何申报新的?”

要执行我认为您想要的操作,您必须创建一个像这样的对象

var test = function() { 
  this.name = "John"; 
  this.city = "Chicago";
  this.married = false;
}

var test2 = new test();
Run Code Online (Sandbox Code Playgroud)

你可以像这样改变属性

test2.name = "Steve";
Run Code Online (Sandbox Code Playgroud)

您可以像这样创建对象数组

myArray = [test, test2];

myArray[1].married = true;
Run Code Online (Sandbox Code Playgroud)