JavaScript เป็นหนึ่งในภาษาการเขียนโปรแกรมที่ได้รับความนิยมสูงสุดในโลกแห่งเทคโนโลยี และหนึ่งในคุณสมบัติที่เพิ่มเข้ามาใน ES6 คือความสามารถในการสร้าง "คลาส" (Class) ที่ช่วยให้นักพัฒนาสามารถออกแบบโปรแกรมในลักษณะเชิงวัตถุ (Object-Oriented Programming) ได้ง่ายและเป็นระเบียบมากขึ้น บทความนี้จะพาไปทำความเข้าใจเกี่ยวกับการใช้ methods ภายใน class ใน JavaScript
ก่อนอื่นเรามาทำความรู้จักกับโครงสร้างของ class ใน JavaScript กันก่อน Class เป็นแผนผังหรือต้นแบบสำหรับวัตถุ (Object) ที่มีคุณสมบัติและการกระทำต่าง ๆ ที่เกี่ยวข้อง หรือที่เรียกว่า properties และ methods ตามลำดับ ในอีเอส 6 (ES6) class ได้รับการนำเสนอเสมือนว่าเป็น “syntactic sugar” ซึ่งหมายความว่าเป็นการเขียนในรูปแบบที่เข้าใจง่ายขึ้น แต่ยังคงมีพื้นฐานการทำงานเดิม
class Vehicle {
constructor(type, color) {
this.type = type;
this.color = color;
}
displayInfo() {
console.log(`This is a ${this.color} ${this.type}.`);
}
}
เมธอด (Methods) ใน class คือฟังก์ชันที่ถูกสร้างขึ้นเพื่อทำงานเฉพาะเจาะจงภายในวัตถุของคลาสนั้น ๆ เมธอดอาจใช้ในการเข้าถึงหรือตรวจสอบข้อมูลของวัตถุเอง
ในตัวอย่างข้างต้น เราได้สร้างเมธอด `displayInfo()` ภายใน class `Vehicle` ซึ่งเมธอดนี้จะพิมพ์ข้อมูลของ vehicle ที่เรากำหนด
หลังจากที่เราสร้าง class และ methods แล้ว เราสามารถใช้มันโดยการสร้างอินสแตนซ์ของ class และเรียกใช้ methods นั้น ๆ
const myCar = new Vehicle("car", "red");
myCar.displayInfo();
// Output: "This is a red car."
Static methods เป็น methods ที่สามารถเรียกใช้งานได้โดยตรงจาก class โดยไม่ต้องสร้างอินสแตนซ์ ตัวอย่างการใช้ static methods คือเมื่อคุณต้องการสร้างฟังก์ชันที่ไม่ได้มีความเกี่ยวข้องโดยตรงกับอินสแตนซ์ใด ๆ ของ class
class Calculator {
static add(a, b) {
return a + b;
}
}
console.log(Calculator.add(2, 3));
// Output: 5
JavaScript ยังสนับสนุน inheritance ใน class ซึ่งช่วยให้เราสามารถสร้าง class ใหม่ที่สืบทอดคุณสมบัติของ class ที่มีอยู่แล้วได้
class Car extends Vehicle {
constructor(color, brand) {
super("car", color);
this.brand = brand;
}
displayCarInfo() {
console.log(`This is a ${this.color} ${this.brand} car.`);
}
}
const myFord = new Car("blue", "Ford");
myFord.displayCarInfo();
// Output: "This is a blue Ford car."
ในตัวอย่างนี้ `Car` ได้สืบทอดคุณสมบัติจาก `Vehicle` ผ่านการใช้คำสั่ง `extends` และสามารถเพิ่ม method ใหม่ได้ เช่น `displayCarInfo()`
การใช้ methods ภายใน class มีประโยชน์หลายอย่างในแอปพลิเคชันจริง เช่น การจัดการข้อมูล การคำนวณ หรือการดำเนินการอื่น ๆ ที่จำเป็นในแต่ละวัตถุ ยกตัวอย่าง เช่น ระบบการจัดการพนักงาน บริษัทอาจมี class `Employee` ที่จะมี methods ต่าง ๆ เช่น `calculateSalary()` หรือ `getContactInfo()`
class Employee {
constructor(name, salary) {
this.name = name;
this.salary = salary;
}
calculateSalary(hours) {
return this.salary * hours;
}
}
const employee1 = new Employee("Alice", 20);
console.log(employee1.calculateSalary(40));
// Output: 800
การใช้ class และ methods ใน JavaScript ทำให้นักพัฒนาสามารถออกแบบแอปพลิเคชันที่มีความซับซ้อนและบำรุงรักษาได้ง่ายขึ้นด้วยการทำให้องค์ประกอบของโค้ดมีความเป็นโมดูลและเข้าใจง่าย การใช้ methods จะช่วยในการแยกหน้าที่และลดความซับซ้อนของโค้ดได้อย่างมีประสิทธิภาพ
การเรียนรู้และเข้าใจ class ใน JavaScript จะช่วยพัฒนาทักษะในการเขียนโปรแกรมเชิงวัตถุได้เป็นอย่างดี ถ้าคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับโปรแกรมมิ่ง สามารถศึกษาเพิ่มเติมได้จากผู้เชี่ยวชาญและร่วมเรียนหลักสูตรกับเราได้ที่ EPT (Expert-Programming-Tutor) เพื่อเพิ่มพูนความรู้และทักษะด้านโปรแกรมมิ่งของคุณให้เชี่ยวชาญมากยิ่งขึ้น!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM