Как добавить новый объект (ключ-значение) в массив в JavaScript?

у меня есть массив, как это :

items=[{'id':1},{'id':2},{'id':3},{'id':4}];

Как добавить новую пару {'id':5} в массив?

3 ответов


использовать .толкай!--3-->:

items.push({'id':5});

иногда .concat () лучше, чем .push () С .concat () возвращает новый массив, в то время как .push () возвращает длину массива.

поэтому, если вы устанавливаете переменную, равную результата, используйте .concat ().

items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
newArray = items.push({'id':5})

в этом случае newArray вернет 5 (длина массива).

newArray = items.concat({'id': 5})

однако здесь newArray вернет [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}, {'id': 5}].


.push () будет добавлять элементы в конец массива.

использовать .unshift по() если нужно добавить некоторый элемент в начало массива i.e:

items.unshift({'id':5});

демо:

items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
items.unshift({'id': 0});
console.log(items);

и использовать .метод Splice() в случае, если вы хотите добавить объект с определенным индексом i.e:

items.splice(2, 0, {'id':5});
           // ^ Given object will be placed at index 2...

демо:

items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
items.splice(2, 0, {'id': 2.5});
console.log(items);