Remove object from a JavaScript Array?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Remove specific element from a javascript array?
具体来说,我有一个数组,如下所示:
1 2 3 4 5 | var arr = [ {url: 'link 1'}, {url: 'link 2'}, {url: 'link 3'} ]; |
现在,您要删除有价值的元素url"link 2",然后删除唯一的数组,如下所示:
1 2 3 4 | arr = [ {url: 'link 1'}, {url: 'link 3'} ]; |
那么谁能帮我解决这个问题呢?谢谢
你可以做一个过滤器。
1 2 3 4 5 6 7 8 9 | var arr = [ {url:"link 1"}, {url:"link 2"}, {url:"link 3"} ]; arr = arr.filter(function(el){ return el.url !=="link 2"; }); |
ps:
使用拼接函数删除数组中的元素:
1 | arr.splice(1, 1); |
如果要在不知道基于元素属性的索引的情况下删除数组的元素,则必须对数组和每个元素的每个属性进行迭代:
1 2 3 4 5 6 7 8 9 | for(var a = 0; a < arr.length; a++) { for(var b in arr[a]) { if(arr[a][b] === 'link 2') { arr.splice(a, 1); a--; break; } } } |