Come aggiungere un oggetto a un array

Come posso aggiungere un oggetto ad un array (in javascript o jquery)? Per esempio, qual è il problema con questo codice?

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

Vorrei usare questo codice per salvare molti oggetti nell'array della funzione1 e chiamare la funzione2 per usare l'oggetto nell'array.

  1. Come posso salvare un oggetto in un array?
  2. Come posso mettere un oggetto in un array e salvarlo in una variabile?

Mettere qualsiasi cosa in un array usando Array.push().

var a=[], b={};
a.push(b);    
// a[0] === b;

Informazioni aggiuntive sugli array

Aggiungere più di un elemento alla volta

var x = ['a'];
x.push('b', 'c');
// x = ['a', 'b', 'c']

Aggiungi elementi all'inizio di un array

var x = ['c', 'd'];
x.unshift('a', 'b');
// x = ['a', 'b', 'c', 'd']

Aggiungi il contenuto di un array ad un altro

var x = ['a', 'b', 'c'];
var y = ['d', 'e', 'f'];
x.push.apply(x, y);
// x = ['a', 'b', 'c', 'd', 'e', 'f']
// y = ['d', 'e', 'f']  (remains unchanged)

Crea un nuovo array dal contenuto di due array

var x = ['a', 'b', 'c'];
var y = ['d', 'e', 'f'];
var z = x.concat(y);
// x = ['a', 'b', 'c']  (remains unchanged)
// y = ['d', 'e', 'f']  (remains unchanged)
// z = ['a', 'b', 'c', 'd', 'e', 'f']
Commentari (2)

Prima di tutto, non c'è nessun object o array. Ci sono Object e Array. In secondo luogo, è possibile farlo:

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

Ora a sarà un array con b come unico elemento.

Commentari (1)

obejct è chiaramente un refuso. Ma sia object che array hanno bisogno di lettere maiuscole.

Puoi usare le mani corte per new Array e new Object, queste sono [] e {}.

Puoi spingere i dati nell'array usando .push. Questo li aggiunge alla fine dell'array o puoi impostare un indice per contenere i dati.

function saveToArray() {
    var o = {};
    o.foo = 42;
    var arr = [];
    arr.push(o);
    return arr;
}

function other() {
    var arr = saveToArray();
    alert(arr[0]);
}

other();
Commentari (1)