# การใช้งาน Parameter of Function ในภาษา TypeScript อย่างเข้าใจง่าย
สวัสดีครับผู้อ่านที่มีความสงสัยและต้องการเรียนรู้การใช้งาน parameter ใน function ของภาษา TypeScript ซึ่งเป็นภาษาที่ขยายมาจาก JavaScript นั้นมีความสามารถในการกำหนดประเภทของข้อมูลได้อย่างชัดเจน ซึ่งช่วยให้การเขียนโค้ดมีความปลอดภัยและลดข้อผิดพลาดที่อาจเกิดจากการใช้ข้อมูลประเภทที่ไม่ถูกต้องได้เป็นอย่างดี
Parameter หรือพารามิเตอร์คือตัวแปรที่อยู่ในการประกาศฟังก์ชัน ซึ่งใช้สำหรับรับข้อมูลเข้ามาเมื่อมีการเรียกใช้ฟังก์ชันนั้นๆ ใน TypeScript, คุณสามารถกำหนดประเภทข้อมูลสำหรับพารามิเตอร์เพื่อให้การเรียกใช้ฟังก์ชันนั้นต้องส่งข้อมูลที่ถูกต้องตามที่ฟังก์ชันกำหนดไว้
นี่คือตัวอย่างโค้ด 3 ตัวอย่างที่แสดงให้เห็นการใช้งานพารามิเตอร์ในการสร้างฟังก์ชันใน TypeScript:
ตัวอย่างที่ 1: ฟังก์ชันการคำนวณพื้นที่สี่เหลี่ยม
function calculateArea(width: number, height: number): number {
return width * height;
}
const area = calculateArea(10, 20);
console.log(`พื้นที่สี่เหลี่ยมคือ: ${area}`); // พื้นที่สี่เหลี่ยมคือ: 200
ฟังก์ชัน `calculateArea` รับพารามิเตอร์ 2 ตัวคือ `width` และ `height` ซึ่งล้วนเป็นข้อมูลประเภท `number` และฟังก์ชันนี้ก็ส่งค่ากลับเป็น `number` เช่นกัน
ตัวอย่างที่ 2: ฟังก์ชันการเข้ารหัสข้อความ
function encodeMessage(message: string, shift: number): string {
let encodedMessage = '';
for (let i = 0; i < message.length; i++) {
const charCode = message.charCodeAt(i) + shift;
encodedMessage += String.fromCharCode(charCode);
}
return encodedMessage;
}
const secret = encodeMessage("Hello, TypeScript!", 1);
console.log(`ข้อความเข้ารหัส: ${secret}`);
ในตัวอย่างนี้ `encodeMessage` รับข้อความเข้ามาเป็น `string` และเลขจำนวนเต็ม `shift` จากนั้นทำการเข้ารหัสข้อความด้วยการเพิ่มค่า ASCII ของแต่ละตัวอักษร
ตัวอย่างที่ 3: ฟังก์ชันการทำงานกับอาร์เรย์ของข้อมูล
function filterByType(array: T[], filterType: (val: T) => boolean): T[] {
return array.filter(filterType);
}
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = filterByType(numbers, (val) => val % 2 === 0);
console.log(`ตัวเลขคู่: ${evenNumbers}`);
ฟังก์ชัน `filterByType` ใช้ Generics `T` สำหรับการรับอาร์เรย์ `array` ของข้อมูลประเภทใดก็ได้ และฟังก์ชัน `filterType` ซึ่งใช้สำหรับกรองข้อมูล ผลลัพธ์คืออาร์เรย์ที่ผ่านเงื่อนไขที่กำหนด
พารามิเตอร์ในฟังก์ชันของ TypeScript มีบทบาทสำคัญในการพัฒนาซอฟแวร์ ยกตัวอย่างเช่น ในการพัฒนาเว็บแอปพลิเคชันด้วย TypeScript เราอาจมีการสร้างฟังก์ชันสำหรับจัดการกับการสร้าง Request สำหรับ API โดยมีพารามิเตอร์สำหรับกำหนด Method, Endpoint, Body ของ Request, หรือ Header ต่างๆ
async function makeApiRequest(method: 'GET' | 'POST', endpoint: string, data?: object) {
const response = await fetch(endpoint, {
method: method,
headers: {
'Content-Type': 'application/json',
},
body: data ? JSON.stringify(data) : null,
});
return response.json();
}
// ใช้ function
makeApiRequest('POST', 'https://example.com/api/data', { username: 'user', password: 'pass' });
จากตัวอย่างการทำ Request ใน API เราสามารถกำหนดชัดเจนว่า function นั้นต้องการมีการโต้ตอบกับ API โดยใช้ method ใด และส่งข้อมูลอะไรเป็น Body การกำหนดลักษณะนี้ช่วยให้เราสามารถป้องกันข้อผิดพลาดในการส่งข้อมูลที่ไม่ตรงกับที่ backend ต้องการ
การใช้งานพารามิเตอร์ในฟังก์ชันของ TypeScript ทำให้การเขียนโค้ดของเรามีความปลอดภัยทางไซน์เท็กซ์และผู้พัฒนาสามารถควบคุมพฤติกรรมของโค้ดได้ง่ายขึ้น จากตัวอย่างและ usecase ที่นำเสนอข้างต้น หวังว่าผู้อ่านจะเห็นถึงความสำคัญและประโยชน์ของการกำหนดประเภทข้อมูลให้ชัดเจนโดยใช้ TypeScript
สำหรับผู้ที่ต้องการพัฒนาทักษะการเขียนโค้ดและเรียนรู้มากขึ้นเกี่ยวกับภาษา TypeScript และการใช้งานพารามิเตอร์ฟังก์ชันอย่างลึกซึ้ง ที่ EPT (Expert-Programming-Tutor) เรามีหลักสูตรที่ออกแบบมาเพื่อช่วยให้คุณเข้าใจพื้นฐานและเทคนิคขั้นสูงในโลกของการเขียนโปรแกรม หากคุณสนใจที่จะพัฒนาทักษะและเตรียมความพร้อมสำหรับอนาคตที่สดใสในอาชีพนี้ อย่าลืมติดต่อเราที่ EPT เพราะเราพร้อมที่จะเป็นส่วนหนึ่งในการเดินทางที่ยิ่งใหญ่ของคุณในโลกของการเขียนโค้ด!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM