我想知道我将如何在javascript中实现一种方法,该方法将删除清除特定条件的数组的所有元素。(最好不使用jQuery)
例如
ar = [ 1, 2, 3, 4 ];
ar.removeIf( function(item, idx) {
return item > 3;
});
上面的代码将遍历数组中的每个项目,并删除所有return true符合条件的项目(在示例中,项目> 3)。
我刚刚开始使用javascript,想知道是否有人知道一种有效的简短方法来完成此任务。
-更新-
如果条件也可以对对象属性起作用,那也将很好。
例如
ar = [ {num:1, str:"a"}, {num:2, str:"b"}, {num:3, str:"c"} ];
ar.removeIf( function(item, idx) {
return item.str == "c";
});
该项目将在哪里删除 item.str == "c"
- UPDATE2 -
如果索引条件也能正常工作,那就太好了。
例如
ar = [ {num:1, str:"a"}, {num:2, str:"b"}, {num:3, str:"c"} ];
ar.removeIf( function(item, idx) {
return idx == 2;
});