Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tìm kiếm trong mảng bằng chuỗi tách thành mảng trong JavaScript


Cho mảng chuỗi và chuỗi tìm kiếm. Lọc mảng giữ lại phần tử chứa tất cả ký tự/từ khóa từ input (sau khi split).

Giải pháp 1: Split input và filter với every

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);

Kết quả

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

Split input bằng khoảng trắng → ["g12,\", "kal"]. Filter delivery nếu tất cả từ khóa đều xuất hiện (case-insensitive).

Giải pháp 2: Không split, dùng includes trực tiếp

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);

Kết quả giống nhau nhưng phụ thuộc thứ tự: \"g12, kal\" khớp \"G12, Kalkaji\" nhưng không khớp \"kal, g12\". Giải pháp 1 linh hoạt hơn (order-independent).