Как мога да добавя обект в масив (в javascript или jquery)? Например какъв е проблемът с този код?
function(){
var a = new array();
var b = new object();
a[0]=b;
}
Бих искал да използвам този код, за да запазя много обекти в масива на функция1 и да извикам функция2, за да използвам обекта в масива.
Поставете каквото и да е в масив с помощта на Array.push().
var a=[], b={};
a.push(b);
// a[0] === b;
Допълнителна информация за масивите
Прибавяне на повече от един елемент в даден момент
var x = ['a'];
x.push('b', 'c');
// x = ['a', 'b', 'c']
Прибавяне на елементи в началото на масив
var x = ['c', 'd'];
x.unshift('a', 'b');
// x = ['a', 'b', 'c', 'd']
Прибавяне на съдържанието на един масив към друг
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)
Създаване на нов масив от съдържанието на два масива
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']
На първо място, няма обект
или масив
. Съществуват Object
и Array
. Второ, вие _**можете да направите това:
a = new Array();
b = new Object();
a[0] = b;
Сега a
ще бъде масив, чийто единствен елемент е b
.
obejct
очевидно е печатна грешка. Но и обект
, и масив
се нуждаят от главни букви.
Можете да използвате кратки думи за new Array
и new Object
, които са []
и {}
.
Можете да вкарвате данни в масива с помощта на .push
. Това ги добавя в края на масива. или можете да зададете индекс, който да съдържа данните.
function saveToArray() {
var o = {};
o.foo = 42;
var arr = [];
arr.push(o);
return arr;
}
function other() {
var arr = saveToArray();
alert(arr[0]);
}
other();