使用JavaScript如何从数组中删除对象并返回该对象?例如,更改此:
[{first:"John", last:"Smith"}]
......对此:
{first:"John", last:"Smith"}
答案 0 :(得分:4)
使用splice
。它将从数组中删除一些项目并将其返回。
var data = [{first:"John", last:"Smith"}];
var extract = data.splice(0, 1);
console.log(extract, data); // will print: {first..., last...}, []
请注意,splice本身会返回一个数组,因此您必须从中获取相应的元素。
如果您只有一个元素,可以splice
,pop
,或者只是按索引获取元素,然后截断数组。
答案 1 :(得分:0)
您可以使用pop()方法。 它将始终从数组中删除最后一个元素并将其处理给您;
示例:
var myArray = [{first:"John", last:"Smith"}]
var myObject = myArray.pop()
现在,您的myObject
值将为{first:"John", last:"Smith"}
而您的myArray
将为空
如果你有多个项目:
var myArray = [{first:"John", last:"Smith"}, {first:"Test", last:"Now"}]
var myObject = myArray.pop()
这里发生的是你的myArray只有第一个值而myObject将有最后一个{first:"Test", last:"Now"}
您还可以查看splice()