First Class Function
ถ้าจะบอกว่าภาษาโปรแกรมมิ่งไหนเป็น First Class Function แปลว่าภาษานั้นสามาใช้ฟังก์ชั่นเป็นเหมือนตัวแปรนึงได้เลย สามารถ หรือใช้เป็น ของฟังก์ชั่นอื่นได้
การกำหนดฟังก์ชั่นให้ตัวแปร
const foo = () => {
console.log("foobar");
};
foo(); // เรียกใช้
// ผลลัพธ์
// foobar
การส่งฟังก์ชันเป็นอาร์กิวเมนต์
function sayHello() {
return "Hello, ";
}
function greeting(helloMessage, name) {
console.log(helloMessage() + name);
}
// ส่ง sayHello() เข้าไปใน greet()
greeting(sayHello, "JavaScript!");
// ผลลัพธ์
// Hello, JavaScript!
รีเทิร์นฟังก์ชั่น (ในฟังก์ชั่นมีฟังก์ชั่น)
function sayHello() {
return () => {
console.log("Hello!");
};
}
การมี First Class Function ในภาษาโปรแกรมมิ่งจะช่วยให้แบ่งโค้ดเป็นโมดูล และมีความยืดหยุ่นมากขึ้น ทำให้ง่ายต่อการทำงานกับโลจิกต่างๆ
To Be Continued..
Last updated