Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

วิธีตรวจสอบว่า Key มีอยู่ใน JavaScript Object หรือไม่

มีหลายวิธีตรวจสอบ key ใน JavaScript object

สมมติมีออบเจ็กต์ employee ดังนี้:

var employee = { 
    name: "Ranjan", 
    age: 25 
}

ต้องการตรวจสอบว่า property 'name' มีอยู่หรือไม่

1) ตัวดำเนินการ 'in'

ใช้ 'in' ตรวจสอบ property ของออบเจ็กต์ รวมถึง inherited property ด้วย

ในตัวอย่าง ตรวจสอบ 'toString' - 'in' จะตรวจ property ของออบเจ็กต์ ไม่เจอจะไปดู base property เนื่องจาก toString เป็น base property จึงคืนค่า true

ตัวอย่าง

<html> <body> <script> 
    var employee = { 
        name: "Ranjan", 
        age: 25 
    } 
    document.write("name" in employee); 
    document.write("<br>"); 
    document.write("salary" in employee); 
    document.write("<br>"); 
    document.write("toString" in employee); 
</script> </body> </html>

ผลลัพธ์

true false true

2) hasOwnProperty()

ตรวจสอบเฉพาะ own property ของออบเจ็กต์ ไม่รวม inherited property คืนค่า true/false ตามความมีอยู่

ตัวอย่างตรวจสอบ 'toString' (inherited) คืนค่า false

ตัวอย่าง

<html> <body> <script> 
    var employee = { 
        name: "Ranjan", 
        age: 25 
    } 
    document.write(employee.hasOwnProperty('toString')); 
    document.write("<br>"); 
    document.write(employee.hasOwnProperty('name')); 
    document.write("<br>"); 
    document.write(employee.hasOwnProperty('salary')); 
</script> </body> </html>

ผลลัพธ์

false true false