我如何添加一个对象到数组(在javascript或jquery)? 例如,这段代码有什么问题?

function() {
  var a = new array();
  var b = new object();
  a[0] = b;
}

我想使用这段代码来保存function1数组中的许多对象,并调用function2来使用数组中的对象。

如何在数组中保存对象? 我如何把一个对象放在一个数组中,并将其保存到一个变量?


当前回答

首先,没有对象或数组。有对象和数组。其次,你可以这样做:

a = new Array();
b = new Object();
a[0] = b;

现在a将是一个数组,b是它唯一的元素。

其他回答

var years = [];
for (i= 2015;i<=2030;i=i+1){
    years.push({operator : i})
}

这里数组years的值是

years[0]={operator:2015}
years[1]={operator:2016}

就像这样。

扩展加比·普卡鲁的答案,包括对第2个问题的回答。

a = new Array();
b = new Object();
a[0] = b;

var c = a[0]; // c is now the object we inserted into a...

另一个答案是这样的。

如果你有一个这样的数组:var contacts = [bob, mary];

你想在这个数组中放入另一个数组,你可以这样做:

声明函数构造函数

function add (firstName,lastName,email,phoneNumber) {
this.firstName = firstName;
this.lastName = lastName;
this.email = email;
this.phoneNumber = phoneNumber;
}

从函数中创建对象:

var add1 = new add("Alba","Fas","Des@gmail.com","[098] 654365364");

并将对象添加到数组中:

contacts[contacts.length] = add1;
a=[];
a.push(['b','c','d','e','f']);

如果这样使用代码,就会遇到作用域问题。如果您计划在函数之间使用它,则必须在函数之外声明它(或者如果调用它,则将其作为参数传递)。

var a = new Array();
var b = new Object();

function first() {
a.push(b);
// Alternatively, a[a.length] = b
// both methods work fine
}

function second() {
var c = a[0];
}

// code
first();
// more code
second();
// even more code