如何使用将字符串分割成数组的 JavaScript 来搜索数组?


我们已给定一个字符串数组和另一个字符串,需要在数组中搜索给定的字符串。我们可以通过检查数组是否包含用户通过输入提供的全部字符来筛选数组。

执行此操作的代码将是 −

示例

解决方案 1

const deliveries = ["14/02/2020, 11:47,G12, Kalkaji", "13/02/2020, 11:48,
A59, Amar Colony"];
const input = "g12, kal";
const pn = input.split(" ");
const requiredDeliveries = deliveries.filter(delivery =>
pn.every(p =>
delivery.toLowerCase()
.includes(p.toLowerCase())));
console.log(requiredDeliveries);

输出

控制台中输出 −

["14/02/2020, 11:47,G12, Kalkaji"]

在另一种更好的方法中,我们可以像下面这样移除分割输入的步骤 −

示例

解决方案 2

const deliveries = ["14/02/2020, 11:47,G12, Kalkaji", "13/02/2020, 11:48,
A59, Amar Colony"];
const input = "g12, kal";
const requiredDeliveries = deliveries
.filter(delivery =>
delivery.toLowerCase()
.includes(input.toLowerCase()));
console.log(requiredDeliveries);

但是,在使用此第二种方法时,我们必须牢记它对顺序敏感,这意味着 AB 将与 ab 或 Ab 匹配,但不会与 BA 或 ba 匹配。

控制台中输出 −

输出

["14/02/2020, 11:47,G12, Kalkaji"]

更新日期: 18-Aug-2020

166 次浏览

启动你的 职业生涯

完成这门课程来获得认证

入门
广告
© . All rights reserved.