我尝试从数组javascript中删除索引,但它不起作用
这是我的代码
subjectData = [
{name: 'a'},
{name: 'b'},
{name: 'c'},
]
eachStudent.subjectName= [
'b', 'c'
]
this.eachStudent.subjectName.forEach((v) => {
let index = this.subjectData.map((el) => el.name.toLowerCase()).indexOf(v.toLowerCase());
if (index > -1) {
this.subjectData.splice(index, 1)
}
})
我想从存在于 eachStudent.subjectName 中的 subjectData 中删除索引
当我控制台 el.name和v我发现一个 el 是相似的但总是返回 -1
请帮忙
回答
使用filter使用单衬执行此操作要容易得多:
subjectData = subjectData.filter((item => !subjectName.includes(item.name)));
这是一个有效的stackblitz:
https://stackblitz.com/edit/js-tly2yl