Dodaj do Array jQuery

103

Wiem, jak zainicjować jeden, ale jak dodać I elementy do tablicy? Słyszałem, że to push()może? Nie mogę tego znaleźć ...

test
źródło
Co chcesz dodać do jakiej tablicy?
Rocket Hazmat
4
Czy zastanawiasz się, jak dodawać elementy do tablicy lub jak dodawać elementy do obiektu jQuery?
Phrogz
@Jahkr: W takim razie co ma z tym wspólnego jQuery?
Wyścigi lekkości na orbicie
Robię tablice w jQuery ...
test
3
@Jahkr: Prawdopodobnie siedzisz też na krześle, robiąc to, ale to nie znaczy, że to pytanie dotyczy Ikei. Nie dajcie się zwieść myśląc, że jQuery to odrębny język; nie jest. Nadal piszesz Javascript. Po prostu korzystasz z rzeczy z biblioteki jQuery (w innych częściach kodu).
Wyścigi lekkości na orbicie

Odpowiedzi:

301

W przypadku tablic JavaScript używasz push().

var a = [];
a.push(12);
a.push(32);

W przypadku obiektów jQuery jest add().

$('div.test').add('p.blue');

Zwróć uwagę, że podczas gdy push()modyfikuje oryginalną tablicę na miejscu, add()zwraca nowy obiekt jQuery, nie modyfikuje oryginalnej.

Rocket Hazmat
źródło
15
+1 za wyjaśnienie metod JavaScript i jQuery oraz ich zasadniczych różnic. Przyszedłem tu $.add()i dostałem trochę więcej.
Sam
28

push to natywna metoda javascript. Możesz tego użyć w ten sposób:

var array = [1, 2, 3];
array.push(4); // array now is [1, 2, 3, 4]
array.push(5, 6, 7); // array now is [1, 2, 3, 4, 5, 6, 7]
Darin Dimitrov
źródło
13

Masz rację. Nie ma to jednak nic wspólnego z jQuery.

var myArray = [];
myArray.push("foo");
// myArray now contains "foo" at index 0.
sholsinger
źródło
ładne, ale jak dodać foo w indeksie „customString”?
Andrei Cristian Prodan
ha! Znalazłem to myArray.push ({'index': 'value'});
Andrei Cristian Prodan
Ale to już nie jest tablica, moja tablica zamienia się w obiekt?
TematX
2

W przypadku tablic JavaScript należy używać funkcji push () i concat ().

var array = [1, 2, 3];
array.push(4, 5);         //use push for appending a single array.




var array1 = [1, 2, 3];
var array2 = [4, 5, 6];

var array3 = array1.concat(array2);   //It is better use concat for appending more then one array.
saroj
źródło