javascript - 删除 node.js 数组中具有相同开头的项

标签 javascript arrays

我有一个包含以下值的数组。我用它来进行 SQL 搜索

var arr = ["ann%", "annie%", "aine%", "pat%", "annabelle%","patrick%" ]

我想要删除将在 SQL 中重复的值。在此示例中,"annie%""annabelle%" 以及 "patrick%" 结果将通过 "ann%"找到"pat%" 搜索,因此不需要它们。

我需要一些 node.js 代码,它将从原始代码返回这样的数组。

var arr1 = ["ann%", "aine%", "pat%" ]

最佳答案

您可以将 filter()some() 与类似的内容一起使用 - 确保不要过滤掉完全匹配:

var arr = ["ann%", "annie%", "aine%", "pat%", "annabelle%","patrick%" ]

arr2 = arr.filter(testEl => !arr.some(item => item !== testEl && testEl.startsWith(item.replace('%',''))))
console.log(arr2)

关于javascript - 删除 node.js 数组中具有相同开头的项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46958208/

相关文章:

javascript - Raven 不使用 Sentry 中的源映射来处理 TS/JS 代码

javascript - vue2如何添加和观察更改数组中的元素

javascript - 如何迭代node.js模块对象以查找所有属性和方法?

javascript - 音乐盒问题

c - 维度大于 3 的数组地址

Javascript Controller 加载/卸载

javascript - Android vs Iphone vs Safari/Chrome/FF 上的像素舍入

javascript - 从三个数组创建对象

java - 计算和写入重复项

arrays - Typescript array.from(iterator) 类型不正确,无法转换?