使用jQuery inArray和JavaScript对象数组

前端之家收集整理的这篇文章主要介绍了使用jQuery inArray和JavaScript对象数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用一系列JavaScript对象:
var IssuesArray = [{"ID" : "1","Name" : "Issue1"},{"ID" : "2","Name" : "Issue2"},{"ID" : "3","Name" : "Issue3"}];

当我知道对象的ID时,我的最终努力是尝试从数组中删除一个对象。我试图使用这样的代码

$.grep(IssuesArray,function(n,i) {
    return i != $.inArray("2",IssuesArray);
});

所以这表明我试图使用jQuery grep通过index(i)删除一个元素,我试图通过使用jQuery inArray来检索。上面的代码当然不会工作,因为“2”应该对应于数组中的一个项目,它们都是JavaScript对象(一个对象永远不会等于“2”)。我需要这样的东西:

$.inArray(javascriptObject.Name=="2",IssuesArray);

有没有人有任何成功使用inArray获取JavaScript对象的索引,使用该对象中的字段值?任何帮助将不胜感激。谢谢。

更新/澄清:有几个人对我的问题感到困惑,但是我收到了一个有用的答案。我在用着:

IssuesArray = $.grep(IssuesArray,function(n) {
    return n.ID != "2";
});

我觉得我在考虑太深,解决方案真的很简单。我只想从数组中删除一个JavaScript对象,只要我知道该对象中特定属性的值。上述解决方案使用jQuery的grep从数组中返回所有内容,除了ID ==“2”的任何对象。像往常一样,感谢您的快速答案。几个答案是很好的解决方案,并且可以使用(例如使用“拼接”),但这个解决方案似乎是最简单的。再次感谢。

解决方法

n是你的列表项,所以这样做应该做这个工作:
$.grep(issuesArray,function(n) { return n.ID != "2"; })
原文链接:https://www.f2er.com/jquery/182487.html

猜你在找的jQuery相关文章