Javascript 使用for循环从数组中删除对象而不影响数组的其余部分
我需要从数组中删除一名员工。我需要使用一个函数删除该雇员的完整对象(所有键值对),该函数将在数组中循环并检查键值Javascript 使用for循环从数组中删除对象而不影响数组的其余部分,javascript,loops,Javascript,Loops,我需要从数组中删除一名员工。我需要使用一个函数删除该雇员的完整对象(所有键值对),该函数将在数组中循环并检查键值firstName,然后根据名称删除该对象 让我们假设这个名字是“迈克” 我想使用splice命令和for循环。这就是我目前拥有的。。。但我无法让它检测并删除对象。我刚刚收到了完整的名单 function employeeUpdater() { for (let key in obj) { if (obj[key] === "Theo") { Arr
firstName
,然后根据名称删除该对象
让我们假设这个名字是“迈克”
我想使用splice命令和for循环。这就是我目前拥有的。。。但我无法让它检测并删除对象。我刚刚收到了完整的名单
function employeeUpdater() {
for (let key in obj) {
if (obj[key] === "Theo") {
Array.splice();
}
}
return(obj)
}
Array.filter()
似乎更适合您的任务
const data=[{name:'Mike'},{name:'Sam'},{name:'Sarah'}];
const filtered=data.filter(p=>p.name!=='Mike');
console.log(过滤)
Array.filter()
似乎更适合您的任务
const data=[{name:'Mike'},{name:'Sam'},{name:'Sarah'}];
const filtered=data.filter(p=>p.name!=='Mike');
console.log(过滤)代码>要做到这一点,您必须首先遍历员工数组。我假设它被称为employees
arraysplice()
方法有两个参数(供您使用)。参数为index
和amountToDelete
。例如,执行employees.splic(3,1)代码>将从列表中删除第四名员工
以下是您在您的环境中如何做到这一点:
employees.forEach(function(obj, index){
for (let key in obj){
if (obj[key] === "Theo") {
employees.splice(index, 1);
}
}
});
为了做到这一点,您必须首先遍历您的员工数组。我假设它被称为employees
arraysplice()
方法有两个参数(供您使用)。参数为index
和amountToDelete
。例如,执行employees.splic(3,1)代码>将从列表中删除第四名员工
以下是您在您的环境中如何做到这一点:
employees.forEach(function(obj, index){
for (let key in obj){
if (obj[key] === "Theo") {
employees.splice(index, 1);
}
}
});
去拿钥匙
循环遍历键,将它们与对象一起使用以获取值
如果找到,请删除,然后断开,因为不需要继续
利润
var keys = Object.keys(employees);
keys.forEach(k => {
if (employees[k] == "Theo") {
delete employees[k];
break;
}
});
去拿钥匙
循环遍历键,将它们与对象一起使用以获取值
如果找到,请删除,然后断开,因为不需要继续
利润
var keys = Object.keys(employees);
keys.forEach(k => {
if (employees[k] == "Theo") {
delete employees[k];
break;
}
});
欢迎来到SO!您能否显示您的数据结构和实际/预期输出?谢谢请提供您正在使用的数据示例。A换句话说。你可以使用它让其他人更容易复制。欢迎使用SO!您能否显示您的数据结构和实际/预期输出?谢谢请提供您正在使用的数据示例。A换句话说。你可以使用使其他人更容易复制。这将使原始数组发生变异,OP要求的数组不会发生变异。我相信你误读了标题。“从数组中删除一个对象而不影响数组的其余部分”是指在不删除或影响其他元素的情况下删除该对象。因此,您想先制作数组的副本吗?这将使原始数组发生变异,OP请求的数组不会发生变异。我相信您误读了标题。“从数组中删除对象而不影响数组的其余部分”是指在不删除或不影响其他元素的情况下删除对象。因此,是否要先制作数组的副本?