Hogyan adjunk hozzá egy objektumot egy tömbhöz

Hogyan adhatok hozzá egy objektumot egy tömbhöz (javascriptben vagy jqueryben)? Például mi a probléma ezzel a kóddal?

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

Szeretném ezt a kódot arra használni, hogy sok objektumot mentsek a function1 tömbjébe, és hívjam a function2-t a tömbben lévő objektum használatára.

  1. Hogyan tudok objektumot menteni egy tömbben?
  2. Hogyan tudok egy objektumot egy tömbbe helyezni és egy változóba menteni?

Az Array.push() segítségével bármit betehetsz egy tömbbe.

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

Extra információ a tömbökről

Egynél több elem hozzáadása egyszerre

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

Elemek hozzáadása egy tömb elejére

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

Egy tömb tartalmának hozzáadása egy másikhoz

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)

Új tömb létrehozása két tömb tartalmából

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']
Kommentárok (2)

Először is, nincs objektum vagy tömb. Van Object és Array. Másodszor, ezt megteheted:

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

Most a egy tömb lesz, amelynek egyetlen eleme b.

Kommentárok (1)

Az "obejct" egyértelműen elírás. De mind az "objektum", mind a "tömb" nagybetűket igényel.

Az new Array és new Object rövidített kezeket használhatsz, ezek a [] és {}.

Az adatokat a tömbbe a .push segítségével tolhatod be. Ez hozzáadja a tömb végéhez. vagy beállíthatsz egy indexet, amely tartalmazza az adatokat.

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

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

other();
Kommentárok (1)