javascript - 只删除ArrayList中的一个重复元素

标签 javascript arraylist filter duplicates google-cloud-firestore

我有一些数组,每次都会填充不同的值。因此数组有时会包含多个相同的值。所以它可能看起来像这样:[0, 0, 0, 2, 3, 0]。我希望能够删除目标值的一个实例。例如,如果目标是 0,则数组可能如下所示:[0, 0, 2, 3, 0]

目前我正在使用此代码:
var new_list =grades.filter(e => e !==grade);
注意:grades是我从数据库中获取的ArrayList。但这行将删除所有 0。但我只想删除其中一个 0。
编辑:
尝试过这样的事情:

let grades = doc.data()[grade_type] || [];
var elementIndex = grades.indexOf(grade);
grades.splice(elementIndex);

但是不起作用。示例 ArrayList [0, 0, 0] 。输出[]

~菲利普

最佳答案

检测到哪个元素有重复项后,您可以使用 splice

grades.splice(elementIndex,1);

关于javascript - 只删除ArrayList中的一个重复元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54716358/

相关文章:

javascript - onClick 在渲染时调用

javascript - jQuery - 如何使用元素的 HTML 获取所有样式/css(在内部/外部文档中定义)

javascript - 如何修复 'button' 交互角色必须可聚焦

javascript - 如何在 javascript/jquery/underscore 中将数组减少到特定数量?

ruby : Finding lowest free ID in an ID array

filter - 如何避免 ffmpeg 内存不足错误

filter - 尝试在 Fabric JS 中使用 setSrc() 更改图像 src 时出现 `filter.applyTo is not a function` 错误

java - 为什么我无法让组合框显示我的 ArrayList?

java - 如何删除 arraylist<String> 中字符串的字符?

arrays - 如何在 iOS Swift 中的嵌套数组(对多关系)中根据条件过滤对象数组