我尝试从数组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.namev我发现一个 el 是相似的但总是返回 -1

请帮忙

回答

使用filter使用单衬执行此操作要容易得多:

subjectData = subjectData.filter((item => !subjectName.includes(item.name)));

这是一个有效的stackblitz:

https://stackblitz.com/edit/js-tly2yl


以上是我尝试从数组javascript中删除索引,但它不起作用的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>