如何从Array中删除对象并保存以供以后使用?

最初我的问题是如何从jQuery数组中删除对象 。 <找到答案,来自@nnnnnn的答案。 使用$.grep

我现在的新问题是你如何保存刚删除的对象?

原因是我希望能够将保存的对象推回到数组中,如果用户决定保留它。

我的networksarrays:

安慰:
networks array = [object Object],[object Object]

 networks: Array[2] 0: Object count: 1 id: "6" label: "CompanyName" type: "Organization" 1: Object count: 1 id: "12622" label: "MyGroup" type: "Group" 

从另一个答案我用它来查看网络数组,找到类型为“组织”对象并将其删除。

networks = $.grep(networks, function(o,i) { return o.type === "Organization"; }, true);

有没有一种简单的方法来保存整个对象? 那么它可以被推回去吗?

谢谢参观!

您可以将回调内的对象分配给变量。 这不是一个非常干净的解决方案,因为这样的回调不应该有IMO的副作用,但它可以在不对代码进行更大的更改的情况下工作:

 var obj; networks = $.grep(networks, function(o,i) { if (o.type === "Organization") { obj = o; return true; } return false; }, true); 

或者更短(对于不了解逗号运算符的人来说更容易混淆):

 var obj; networks = $.grep(networks, function(o,i) { return o.type === "Organization" ? ((obj = o), true) : false; }, true);