如何使用javascript获取已删除项的值

如何使用javascript获取已删除项的值,javascript,Javascript,我已从数组中删除了一个元素。现在,我需要显示已删除的项目和剩余的项目,但未成功。假设该数组如下所示: let person = ['Cercei','Snow','Arya','Sansa'] 我已经删除了“雪”和“雪”。所以,我需要在两个不同的新数组中显示两个东西 delPerson = ['Cercei','Snow'] remArray = ['Arya','Sansa'] 如何使用JavaScript实现这一点?在我的应用程序中,我有每个名字的删除图标,所以我可以删除任何名字。我

我已从数组中删除了一个元素。现在,我需要显示已删除的项目和剩余的项目,但未成功。假设该数组如下所示:

let person = ['Cercei','Snow','Arya','Sansa'] 
我已经删除了“雪”和“雪”。所以,我需要在两个不同的新数组中显示两个东西

delPerson = ['Cercei','Snow'] 
remArray = ['Arya','Sansa']
如何使用JavaScript实现这一点?在我的应用程序中,我有每个名字的删除图标,所以我可以删除任何名字。我想将删除的名称和剩余的名称放入两个不同的数组中。请帮助我如何使用javascript或lodash实现这一点

让我告诉你我的申请代码:

let person = personData.map(n => n.name) 
let remPerson = person.filter(p => person.indexOf(p) !== -1)

现在,person和remPerson数组显示相同的值。比较长度时会产生问题。

您可以使用
拼接
,但这将修改原始阵列。我不清楚在OP的情况下这是否合适。以下是Mozilla关于拼接的文档:

let person=['Cercei'、'Snow'、'Arya'、'Sansa';
设delPerson=person.splice(0,2);
控制台日志(delPerson);

控制台日志(个人)您可以使用splice删除项目,还可以跟踪两个单独的阵列:

让personData=[{name:'Cercei'},{name:'Snow'},{name:'Arya'},{name:'Sansa'}];
让person=personData.map(n=>n.name);
让removeItems=['Cercei','Snow'];
设delPerson=[];
removeItems.forEach(项=>{
推(
…个人拼接(个人索引(项目),1)
)
});
console.log('delPerson:',delPerson);
console.log('剩余:',个人)一种方法是使用

const persons=['Cercei','Snow','Arya','Sansa'];
常数{
删除,
保持
}=人。减少((acc,人)=>{
//注意:删除条件可能会有所不同
如果(person=='Cercei'| | person=='Snow'){
附件删除推送(人);
}否则{
按保持推(人);
}
返回acc;
}, {
已删除:[],
保存:[]
});
控制台日志(已删除);

控制台日志(保留)共享更多javascript代码以显示如何删除项目。我已经使用indexof方法来完成此操作。。但每次它在控制台中显示两个值相同的数组时。删除操作正常。通过使用此逻辑,我必须使用
splice
比较两个阵列?我使用es6或lodash询问剩余的项逻辑。其他事情也在起作用correct@j3py你能举一些工作实例吗。这对我会有帮助的