我有这样的阵列:从JSON删除特定线与jquery
var array = [{"a":"1","b":"2"},{"a":"3","b":"1"},{"a":"5","b":"4"}]
现在我想删除行,可以说,其中a = 5。所以事后阵列看起来像这样:
var array = [{"a":"1","b":"2"},{"a":"3","b":"1"}]
我如何做这个最简单和最快的方法是什么?
我有这样的阵列:从JSON删除特定线与jquery
var array = [{"a":"1","b":"2"},{"a":"3","b":"1"},{"a":"5","b":"4"}]
现在我想删除行,可以说,其中a = 5。所以事后阵列看起来像这样:
var array = [{"a":"1","b":"2"},{"a":"3","b":"1"}]
我如何做这个最简单和最快的方法是什么?
您可以使用jQuery.map
,它允许您为要删除的元素返回null。
如:
var array = [{"a":"1","b":"2"},{"a":"3","b":"1"},{"a":"5","b":"4"}]
var newArray = $.map(array, function(e){
return (e.a == "5") ? null : e;
});
// newArray contains [{"a":"1","b":"2"},{"a":"3","b":"1"}]
活生生的例子(看控制台):http://jsfiddle.net/2Yz7f/
的Javascript(非jQuery的)做法:http://jsfiddle.net/VYKBc/
也许这就是你的答案
array.splice(2,1);
BTW ,那不是json,那是真正的javascript对象。 – timidboy
最简单和最快的方式总是用于循环和if子句。然后你可能想阅读[映射](https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/map)或[其他](http:// api。 jquery.com/jQuery.map/)。 – VisioN