Javascript 如何从数组中删除对象并将其保存以供以后使用?

Javascript 如何从数组中删除对象并将其保存以供以后使用?,javascript,jquery,arrays,object,Javascript,Jquery,Arrays,Object,原来我的问题是找到了@nnnnnn的答案。使用$.grep 我现在的新问题是,如何保存刚刚删除的对象 原因是,如果用户决定保留保存的对象,我希望能够将其推回到数组中 我的网络阵列: 控制台: networks数组=[object object],[object object] networks: Array[2] 0: Object count: 1 id: "6" label: "CompanyName" type: "Organizat

原来我的问题是找到了@nnnnnn的答案。使用
$.grep

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

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

我的
网络
阵列:

控制台:
networks数组=[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){returno.type==“Organization”;},true)

有没有简单的方法保存整个对象?这样就可以把它推回去了


谢谢你看

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

var obj;
networks = $.grep(networks, function(o,i) {
  if (o.type === "Organization") {
      obj = o;
      return true;
  }
  return false;
}, true);
或者稍微短一点(对于不知道逗号运算符的人来说,这更让人困惑):


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

var obj;
networks = $.grep(networks, function(o,i) {
  if (o.type === "Organization") {
      obj = o;
      return true;
  }
  return false;
}, true);
或者稍微短一点(对于不知道逗号运算符的人来说,这更让人困惑):


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

var obj;
networks = $.grep(networks, function(o,i) {
  if (o.type === "Organization") {
      obj = o;
      return true;
  }
  return false;
}, true);
或者稍微短一点(对于不知道逗号运算符的人来说,这更让人困惑):


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

var obj;
networks = $.grep(networks, function(o,i) {
  if (o.type === "Organization") {
      obj = o;
      return true;
  }
  return false;
}, true);
或者稍微短一点(对于不知道逗号运算符的人来说,这更让人困惑):



从回调返回之前,请将对象保存在变量中。它不是超级干净,但可以工作。感谢提示,我只是实际运行了此函数,并且
$。grep
没有从函数中删除对象:(可能回到第1格,但应该是这样,这就是
$.grep
正在做的。请注意,您在回调中使用的是
o.name
,但示例数据没有
name
属性。编辑:Yep;)@ThilakRaj这应该很简单,只需检查您单击的对象。比较其中的一些键,如
id
name
等等,您可以使用简单的
for循环
lodash
在主数组中找到它,然后将其删除。使用
splice
@ThilakRaj btw从不使用cap命名对象键ital字母ie
Name
始终只是
Name
。在您从回调返回之前,请检查此Stackoverflow btw,将对象保存在变量中。它不是超级干净的,但可以工作。感谢提示,我只是实际运行了此函数,
$。grep
没有从函数中删除对象:(可能回到第1格,但应该是这样,这就是
$.grep
正在做的。请注意,您在回调中使用的是
o.name
,但示例数据没有
name
属性。编辑:Yep;)@ThilakRaj这应该很简单,只需检查您单击的对象。比较其中的一些键,如
id
name
等等,您可以使用简单的
for循环
lodash
在主数组中找到它,然后将其删除。使用
splice
@ThilakRaj btw从不使用cap命名对象键ital字母ie
Name
始终只是
Name
。在您从回调返回之前,请检查此Stackoverflow btw,将对象保存在变量中。它不是超级干净的,但可以工作。感谢提示,我只是实际运行了此函数,
$。grep
没有从函数中删除对象:(可能回到第1格,但应该是这样,这就是
$.grep
正在做的。请注意,您在回调中使用的是
o.name
,但示例数据没有
name
属性。编辑:Yep;)@ThilakRaj这应该很简单,只需检查您单击的对象。比较其中的一些键,如
id
name
等等,您可以使用简单的
for循环
lodash
在主数组中找到它,然后将其删除。使用
splice
@ThilakRaj btw从不使用cap命名对象键ital字母ie
Name
始终只是
Name
。在您从回调返回之前,请检查此Stackoverflow btw,将对象保存在变量中。它不是超级干净的,但可以工作。感谢提示,我只是实际运行了此函数,
$。grep
没有从函数中删除对象:(可能回到第1格,但应该是这样,这就是
$.grep
正在做的。请注意,您在回调中使用的是
o.name
,但示例数据没有
name
属性。编辑:Yep;)@ThilakRaj这应该很简单,只需检查您单击的对象。比较其中的一些键,如
id
name
等等,您可以使用简单的
for循环
lodash
在主数组中找到它,然后将其删除。使用
splice
@ThilakRaj btw从不使用cap命名对象键ital字母ie
Name
始终只是
Name
。查看此Stackoverflow顺便说一句,数组中的每个对象都会有单独的按钮。如果我要删除数组中的特定对象,请单击按钮。如何操作。我使用angular js ng repeat生成项目。您能帮助我完成其他事情吗蚂蚁,会有九月