Добавить в массив jQuery


103

Я знаю, как инициализировать один, но как добавить элементы в массив? Я слышал, push()может быть? Не могу найти ...


Что вы хотите добавить в какой массив?
Rocket Hazmat

4
Вы спрашиваете, как добавить элементы в массив или как добавить элементы в объект jQuery?
Phrogz

@Jahkr: Тогда при чем тут jQuery?
Гонки легкости на орбите

Массивы делаю в jQuery ...
тест

3
@Jahkr: Вы, наверное, тоже сидите на стуле, пока делаете это, но это не значит, что вопрос относится к Ikea. Не заблуждайтесь, думая, что jQuery - это отдельный язык; это не. Вы все еще пишете Javascript. Вы просто используете что-то из библиотеки jQuery (в других частях вашего кода).
Гонки за легкостью на орбите

Ответы:


301

Для массивов JavaScript вы используете push().

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

Для объектов jQuery существует add().

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

Обратите внимание, что при push()изменении исходного массива на месте, add()возвращает новый объект jQuery, он не изменяет исходный.


15
+1 за объяснение методов JavaScript и jQuery и их фундаментального различия. Я пришел сюда $.add()и получил еще немного.
Сэм

28

push - это собственный метод javascript. Вы можете использовать это так:

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]

13

Ты прав. Однако это не имеет ничего общего с jQuery.

var myArray = [];
myArray.push("foo");
// myArray now contains "foo" at index 0.

хорошо, но как мне добавить foo в индекс customString?
Андрей Кристиан Продан

ха! Я нашел myArray.push ({'index': 'value'});
Андрей Кристиан Продан

Но тогда это уже не массив, myArray превращается в объект?
SubjectX

2

Для массивов JavaScript вы используете функции push () и 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.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.