获取数组键以删除基于该数组对象的数组
Get array key to remove an array based on that array object
新题,这是数组
[
0: {
"id" : "3"
"name": "David",
"age": "20"
},
1: {
"id" : "6"
"name": "",
"age": "18"
},
2: {
"id" : "8"
"name": "Micheal",
"age": "25"
},
3: {
"id" : "9"
"name": "Wonder Women",
"age": "20"
},
4: {
"id" : "12"
"name": "Clark",
"age": ""
}
]
点击按钮时如何根据id删除?在我的应用程序中有一个删除按钮来删除这个数组。我认为它需要获取数组键才能删除数组。
例如:我可以得到id=8,但是我怎样才能得到数组键2来删除数字2数组?
如有不明白欢迎评论。谢谢。
假设您的数组存储在 obj 中,您可以使用 lodash 函数 remove 按以下方式删除数组中的项目.
_.remove(obj, function(currentObject) {
return currentObject.id == "8";
});
这将从您的数组中删除包含“8”的项目“2”
array.filter((obj) => {
if (obj.id != yourId){
return obj;
}
})
并且不要忘记数组中对象中的所有逗号。 (在 id 之后)
假设你的数组是这样的:
arr = [
{"id":"3","name":"Clark"},
{"id":"6","name":"David"},
{"id":"8","name":"Miche"}
];
id = 6;
arr = $.grep(arr, function(data, index) {
return data.id != id
});
现在最后这个 return 数组删除了 id=6
的记录
如果你想直接操作数组的内容而不是返回新数组,你可以试试这个
let index = array.findIndex(obj => obj.id == objIdToDelete)
if(index != -1) { array.splice(index, 1) }
查看Array.prototype.splice()了解更多
新题,这是数组
[
0: {
"id" : "3"
"name": "David",
"age": "20"
},
1: {
"id" : "6"
"name": "",
"age": "18"
},
2: {
"id" : "8"
"name": "Micheal",
"age": "25"
},
3: {
"id" : "9"
"name": "Wonder Women",
"age": "20"
},
4: {
"id" : "12"
"name": "Clark",
"age": ""
}
]
点击按钮时如何根据id删除?在我的应用程序中有一个删除按钮来删除这个数组。我认为它需要获取数组键才能删除数组。
例如:我可以得到id=8,但是我怎样才能得到数组键2来删除数字2数组?
如有不明白欢迎评论。谢谢。
假设您的数组存储在 obj 中,您可以使用 lodash 函数 remove 按以下方式删除数组中的项目.
_.remove(obj, function(currentObject) {
return currentObject.id == "8";
});
这将从您的数组中删除包含“8”的项目“2”
array.filter((obj) => {
if (obj.id != yourId){
return obj;
}
})
并且不要忘记数组中对象中的所有逗号。 (在 id 之后)
假设你的数组是这样的:
arr = [
{"id":"3","name":"Clark"},
{"id":"6","name":"David"},
{"id":"8","name":"Miche"}
];
id = 6;
arr = $.grep(arr, function(data, index) {
return data.id != id
});
现在最后这个 return 数组删除了 id=6
的记录如果你想直接操作数组的内容而不是返回新数组,你可以试试这个
let index = array.findIndex(obj => obj.id == objIdToDelete)
if(index != -1) { array.splice(index, 1) }
查看Array.prototype.splice()了解更多