Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การห่อหุ้ม JavaScript โดยใช้ฟังก์ชันนิรนาม


ภาษาโปรแกรมเชิงวัตถุอนุญาตให้ซ่อนข้อมูลโดยใช้ฟิลด์ส่วนตัว พวกเขาใช้สิ่งเหล่านี้เพื่อซ่อนภายในของชั้นเรียน ใน JS ไม่มีการสนับสนุนการสร้างเพื่อซ่อน/ห่อหุ้มการทำงานภายใน

เรามีฟังก์ชันนิรนามที่สามารถให้การห่อหุ้มใน JS แก่คุณได้ เรามาดูตัวอย่างกัน −

ตัวอย่าง

const HIDDEN_CONST = 100;
function fnWeWantToHide(x, y) {
   return (x + y) * HIDDEN_CONST
}
console.log(fnWeWantToHide(1, 2))

หากเราเขียนโค้ดข้างต้นในที่โล่ง รหัสนี้จะทำลายเนมสเปซส่วนกลางด้วยชื่อเหล่านี้ สิ่งที่เราสามารถทำได้คือห่อสิ่งนี้ใน IIFE (นิพจน์การทำงานที่เรียกใช้ทันที) ตัวอย่างเช่น

ตัวอย่าง

(() => {
const HIDDEN_CONST = 100;
function fnWeWantToHide(x, y) {
   return (x + y) * HIDDEN_CONST
}
console.log(fnWeWantToHide(1, 2))
})()

ตอนนี้ ตัวแปรเหล่านี้ถูกซ่อนอยู่ภายในนิพจน์การทำงาน แต่ฟังก์ชันและ const จะไม่สร้างมลพิษให้กับเนมสเปซส่วนกลางอีกต่อไป