มีหลายวิธีในการตรวจสอบการมีอยู่ของอ็อบเจ็กต์/คีย์ในอาร์เรย์และอ็อบเจ็กต์ ให้เราดูกรณีของ Object ก่อน
หากต้องการดูว่ามีคีย์อยู่ในวัตถุหรือไม่ เราจำเป็นต้องใช้ตัวดำเนินการ in
ตัวอย่าง
let obj = {
name: "John",
age: 22
}
console.log('name' in obj);
console.log('address' in obj); ผลลัพธ์
true false
หมายเหตุ −ตัวดำเนินการ in จะคืนค่าเป็น จริง หากคุณสมบัติที่ระบุอยู่ในอ็อบเจ็กต์ที่ระบุหรือเชนต้นแบบ
ในการตรวจสอบว่ามีวัตถุอยู่ในอาร์เรย์หรือไม่ เราจำเป็นต้องใช้เมธอด indexOf บนอาร์เรย์ หากไม่พบอ็อบเจ็กต์ -1 จะถูกส่งกลับ มิฉะนั้น ดัชนีของอ็อบเจ็กต์จะถูกส่งคืน
ตัวอย่าง
let arr = ["test", 1, 2, "hello", 23.5];
console.log(arr.indexOf({}))
console.log(arr.indexOf("hello"))
console.log(arr.indexOf(23.5)) ผลลัพธ์
-1 3 4