ออบเจ็กต์และคลาส (Objects and Classes)
— javascript — 1 min read
อ็อบเจกต์และคลาส (Objects and Classes)
ในภาษา JavaScript เราสามารถใช้อ็อบเจกต์และคลาสในการสร้างและจัดการกับข้อมูลได้อย่างมีประสิทธิภาพ อ็อบเจกต์เป็นแบบจำลองของวัตถุหรือสิ่งของที่มีคุณสมบัติ (properties) และการกระทำ (methods) สามารถสร้างหลายอ็อบเจกต์ขึ้นมาจากคลาสเดียวกันได้ โดยอ็อบเจกต์แต่ละตัวจะมีคุณสมบัติและการกระทำที่ไม่เหมือนกันได้
การสร้างคลาสใน JavaScript สามารถทำได้โดยใช้คีย์เวิร์ด class
ตามด้วยชื่อคลาส โดยคลาสจะประกอบด้วยคอนสตรักเตอร์ (constructor) และเมธอดต่างๆ ที่ใช้ในการกำหนดคุณสมบัติและการกระทำของอ็อบเจกต์
ตัวอย่างการสร้างคลาสและอ็อบเจกต์ใน JavaScript:
class Person { constructor(name, age) { this.name = name; this.age = age; }
sayHello() { console.log(`สวัสดีครับ ผมชื่อ ${this.name} อายุ ${this.age} ปี`); }}
// สร้างอ็อบเจกต์จากคลาส Personconst person1 = new Person("John", 25);const person2 = new Person("Jane", 30);
// เรียกใช้เมธอดในอ็อบเจกต์person1.sayHello(); // สวัสดีครับ ผมชื่อ John อายุ 25 ปีperson2.sayHello(); // สวัสดีครับ ผมชื่อ Jane อายุ 30 ปี`
ในตัวอย่างข้างต้น เราสร้างคลาส Person
ที่มีคุณสมบัติ name
และ age
และเมธอด sayHello()
ซึ่งใช้ในการแสดงผลข้อมูลชื่อและอายุของบุคคล เราสร้างอ็อบเจกต์ person1
และ person2
จากคลาส Person
และเรียกใช้เมธอด sayHello()
ในแต่ละอ็อบเจกต์
อ็อบเจกต์และคลาสใน JavaScript เป็นเครื่องมือที่มีประโยชน์ในการจัดการข้อมูลและการกระทำในโปรแกรม และช่วยให้เราสามารถออกแบบและพัฒนาโค้ดที่ยืดหยุ่นและรับมือกับการเปลี่ยนแปลงได้อย่างมีประสิทธิภาพ
นอกจากคุณสมบัติและเมธอดพื้นฐานที่อธิบายในตัวอย่างข้างต้น คลาสใน JavaScript ยังสามารถมีคุณสมบัติและเมธอดเพิ่มเติมได้ตามความต้องการของโปรแกรม
ตัวอย่างเพิ่มเติม:
class Person { constructor(name, age) { this.name = name; this.age = age; this.hobbies = []; }
sayHello() { console.log(`สวัสดีครับ ผมชื่อ ${this.name} อายุ ${this.age} ปี`); }
addHobby(hobby) { this.hobbies.push(hobby); }
showHobbies() { console.log(`งานอดิเรกของ ${this.name}:`); for (let hobby of this.hobbies) { console.log(hobby); } }}
// สร้างอ็อบเจกต์จากคลาส Personconst person1 = new Person("John", 25);const person2 = new Person("Jane", 30);
person1.sayHello(); // สวัสดีครับ ผมชื่อ John อายุ 25 ปี
person1.addHobby("อ่านหนังสือ");person1.addHobby("เล่นกีฬา");
person2.addHobby("วาดรูป");person2.addHobby("เดินเล่น");
person1.showHobbies();/\*งานอดิเรกของ John:อ่านหนังสือเล่นกีฬา\*/
person2.showHobbies();/\*งานอดิเรกของ Jane:วาดรูปเดินเล่น\*/`
ในตัวอย่างข้างต้น เราเพิ่มคุณสมบัติ hobbies
และเมธอด addHobby()
และ showHobbies()
ในคลาส Person
เพื่อเพิ่มงานอดิเรกและแสดงรายการงานอดิเรกของแต่ละบุคคล
อ็อบเจกต์และคลาสใน JavaScript ช่วยให้เราสามารถแยกแยะและจัดการกับข้อมูลได้ในรูปแบบที่สอดคล้องกับโครงสร้างและลักษณะของวัตถุจริงในโลกแห่งความเป็นจริง