可能重复:
从 javascript 数组中删除特定元素?
具体来说,我有一个数组如下:
var arr = [
{url: 'link 1'},
{url: 'link 2'},
{url: 'link 3'}
];
现在您要删除有价值的元素 url “link 2”,并在删除唯一的数组后如下所示:
arr = [
{url: 'link 1'},
{url: 'link 3'}
];
那么谁能帮我解决这个问题呢?非常感谢
可能重复:
从 javascript 数组中删除特定元素?
具体来说,我有一个数组如下:
var arr = [
{url: 'link 1'},
{url: 'link 2'},
{url: 'link 3'}
];
现在您要删除有价值的元素 url “link 2”,并在删除唯一的数组后如下所示:
arr = [
{url: 'link 1'},
{url: 'link 3'}
];
那么谁能帮我解决这个问题呢?非常感谢
你可以做一个过滤器。
var arr = [
{url: "link 1"},
{url: "link 2"},
{url: "link 3"}
];
arr = arr.filter(function(el){
return el.url !== "link 2";
});
PS: Array.filter
方法是在JavaScript 1.6中实现的,大多数现代浏览器都支持,如果要支持旧浏览器,你可以自己写一个。
使用 splice 函数删除数组中的元素:
arr.splice(1, 1);
如果您想在不知道基于元素属性的索引的情况下删除数组的元素,则必须遍历数组和每个元素的每个属性:
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;
}
}
}