How to add a new object (key-value pair) to an array in javascript?
我的数组是:
1 | items=[{'id':1},{'id':2},{'id':3},{'id':4}]; |
如何向数组中添加一对新的
使用:推:
1 | items.push({'id':5}); |
有时.concat()比.push()更好,因为.concat()返回新数组,而.push()返回数组的长度。
因此,如果要将变量设置为等于结果,请使用.concat()。
1 2 | items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}]; newArray = items.push({'id':5}) |
在这种情况下,newarray将返回5(数组的长度)。
1 | newArray = items.concat({'id': 5}) |
但是,这里newarray将返回['id':1,'id':2,'id':3,'id':4,'id':5]。
.push()将向数组末尾添加元素。
如果需要将一些元素添加到数组的开头,请使用.unshift(),即:
1 | items.unshift({'id':5}); |
演示:
1 2 3 | items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}]; items.unshift({'id': 0}); console.log(items); |
如果要在特定索引处添加对象,请使用.splice(),即:
1 2 | items.splice(2, 0, {'id':5}); // ^ Given object will be placed at index 2... |
演示:
1 2 3 | items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}]; items.splice(2, 0, {'id': 2.5}); console.log(items); |