การเขียนโปรแกรมเป็นศาสตร์แห่งความเป็นระเบียบและระบบวิธีคิด หนึ่งในแนวทางที่นิยมในหมู่นักพัฒนาโปรแกรมคือการเขียนโค้ดตามหลัก Functional Programming ใน JavaScript ภาษาสคริปต์ที่กำลังมาแรง การจัดการกับ statements เช่น if-else และ try-catch อาจนำไปสู่การเขียนโค้ดที่เน้นความเรียบง่ายและการจัดการกับความเสี่ยงที่ดีขึ้น เราจะมาดูกันว่า 5 วิธีการสามารถนำเอา if-else และ try-catch มาพัฒนาให้เป็นรูปแบบ Functional อย่างไรบ้าง
แทนที่จะใช้ if-else เป็น statement แบบดั้งเดิม เราสามารถใช้ ternary operator ที่เป็น expression ซึ่งสามารถนำไปใช้เป็นส่วนหนึ่งของการกำหนดค่าได้ เช่น:
const getStatus = (isAvailable) => isAvailable ? 'Available' : 'Unavailable';
การแบ่งโค้ดออกเป็น function จะช่วยให้โค้ดมีความชัดเจนขึ้นและสามารถทดสอบได้ง่ายขึ้น ตัวอย่างเช่น การแยก logic ที่ใช้ในการตรวจสอบเงื่อนไขออกเป็นหน้าที่ของ function ที่สั้นและเฉพาะเจาะจง:
const isEligibleForDiscount = (customer) => customer.age > 60 || customer.memberStatus === 'VIP';
if (isEligibleForDiscount(customer)) {
// ให้ส่วนลด
}
Higher order functions คือ function ที่รับ function อื่นเป็น argument หรือ return function เราสามารถใช้มันเพื่อจัดการกับ conditional logic ได้ ตัวอย่างเช่น:
const ifElse = (condition, funcTrue, funcFalse) =>
condition ? funcTrue() : funcFalse();
const logSuccess = () => console.log('Operation was successful.');
const logError = () => console.log('There was an error.');
ifElse(isOperationSuccessful, logSuccess, logError);
ในการจัดการกับค่าที่อาจเป็น `undefined` หรือ `null` เราสามารถใช้ optional chaining (`?.`) และ nullish coalescing operator (`??`) ได้ ซึ่งจะช่วยลดการใช้ if-else ในการตรวจสอบค่าได้:
const getPropertyValue = (obj, key) => obj?.[key] ?? 'Default value';
ในบางกรณี การใช้งาน try-catch อาจทำให้โค้ดไม่สวยงามและยุ่งยากในการอ่าน แต่เราสามารถการกำหนดเป็น function และใช้อย่างชาญฉลาดได้:
const safeExecute = (func) => {
try {
return { result: func() };
} catch (error) {
return { error };
}
};
const { result, error } = safeExecute(() => {
if (conditionFails) throw new Error('Something went wrong');
return 'Success';
});
if (error) {
console.error(error);
} else {
console.log(result);
}
นี่คือเคล็ดลับที่เราสามารถใช้เพื่อให้ if-else และ try-catch ของเราใน JavaScript มีลักษณะที่เป็น functional มากขึ้น การใช้งานวิธีเหล่านี้จะทำให้โค้ดของเราสวยงาม ช่วยให้เกิดความชัดเจนในการจัดการโครงสร้างของโปรแกรมและลดความซับซ้อนได้อย่างมาก ดีขึ้นสำหรับการทดสอบและการบำรุงรักษาในระยะยาว
การศึกษาและการปฏิบัติตาม Functional Programming ไม่เพียงแต่จะช่วยเสริมทักษะในการเขียนโค้ดเท่านั้น แต่ยังสร้างพื้นฐานที่ดีให้กับการคิดวิเคราะห์และแก้ไขปัญหาที่นักพัฒนาทุกคนควรมี ถ้าคุณสนใจในการพัฒนาทักษะการเขียนโปรแกรมในระดับสูงขึ้นอีกขั้น การเรียนรู้เกี่ยวกับภาษา JavaScript และวิธีการเขียนโค้ดตามแบบ Functional เป็นอีกหนึ่งทางเลือกที่คุณไม่ควรมองข้าม!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: javascript functional_programming if-else try-catch expression-based_conditionals higher_order_functions optional_chaining nullish_coalescing functional_transformation programming_paradigm
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com