Skip to content
Siamcoder

ออบเจ็กต์และคลาส (Objects and Classes)

javascript1 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} ปี`);
}
}
// สร้างอ็อบเจกต์จากคลาส Person
const 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);
}
}
}
// สร้างอ็อบเจกต์จากคลาส Person
const 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 ช่วยให้เราสามารถแยกแยะและจัดการกับข้อมูลได้ในรูปแบบที่สอดคล้องกับโครงสร้างและลักษณะของวัตถุจริงในโลกแห่งความเป็นจริง