ใช้ Regular Expression พร้อม flag 'i' สำหรับ Case Insensitive
สร้าง RegExp จากอาร์เรย์ค่า แล้วใช้ test() ตรวจสอบ
ตัวอย่างโค้ด
var allNames = ['john', 'John', 'JOHN'];
// รวมค่าด้วย | (OR) และใช้ flag 'i' สำหรับ case-insensitive
var makeRegularExpression = new RegExp(allNames.join("|"), "i");
var hasValue = makeRegularExpression.test("JOHN");
console.log("Is Present = " + hasValue); // true
วิธีรัน
node fileName.js
ผลลัพธ์
Is Present = true
วิธีอื่น: ใช้ array.some() และ toLowerCase()
const names = ['john', 'John', 'JOHN'];
const search = "JOHN";
const found = names.some(name => name.toLowerCase() === search.toLowerCase());
console.log(found); // true
คำอธิบาย
new RegExp(pattern, 'i'): flagi= case insensitivejoin("|")รวมค่าเป็น pattern แบบ OR:john|John|JOHNtest()คืนค่า true/false ว่าตรงกับ pattern หรือไม่- วิธี
some()+toLowerCase()อ่านง่ายกว่า และหลีกเลี่ยง regex special characters