4

我有以下区域:

myArray 控制台输出为:

[>Object, >Object, >Object, >Object] 

最后打开的项目:

Object
helper: true
id: 0
__proto__: Object

我想找到然后从我的数组中删除这个项目,但总是被困在这里-1。想法?

jQuery.inArray([{'helper':true}], myArray)

谢谢

4

2 回答 2

1

使用jQuery.each而不是jQuery.inArray查找不需要的对象并将其从数组中删除:

var arr = [
 { helper: false },
 { helper: true },
 { helper: false }
];

var found = -1;
jQuery.each(arr, function(index, obj) {
 if (obj.helper) {
  found = index;
  return false;
 }
});

if (found > -1) {
 arr.splice(found, 1);
}
于 2012-04-20T23:56:29.203 回答
1

您可以过滤掉Arraywith的元素jQuery.grep

myArray = $.grep(myArray, function (item) {
    return !item.helper;
});

至于inArray:您的第一个论点是定义一个新的Arrayand Object。因为他们在new这里,他们也不能在里面myArray

于 2012-04-20T23:57:05.313 回答