ES6 - Proxy API
ES6 ใช้รูปแบบการขอร้องของการเขียนโปรแกรมเมตาโดยใช้ Proxies คล้ายกับ ReflectAPI Proxy API เป็นอีกวิธีหนึ่งในการนำการเขียนโปรแกรมเมตาไปใช้ใน ES6 วัตถุ Proxy ใช้เพื่อกำหนดลักษณะการทำงานที่กำหนดเองสำหรับการดำเนินการพื้นฐาน วัตถุพร็อกซีดำเนินการบางอย่างในนามของวัตถุจริง
คำศัพท์ต่างๆที่เกี่ยวข้องกับพร็อกซี ES6 มีให้ด้านล่าง
ซีเนียร์ No | วิธีการและคำอธิบาย |
---|---|
1 | handler วัตถุตัวยึดที่มีกับดัก |
2 | traps วิธีการที่ให้การเข้าถึงคุณสมบัติ สิ่งนี้คล้ายคลึงกับแนวคิดของกับดักในระบบปฏิบัติการ |
1 | target วัตถุที่พร็อกซีจำลองเสมือน มักใช้เป็นแบ็กเอนด์การจัดเก็บสำหรับพร็อกซี |
ไวยากรณ์
ไวยากรณ์ที่ระบุด้านล่างนี้ใช้สำหรับ Proxy API โดยที่ target สามารถเป็นวัตถุประเภทใดก็ได้เช่นอาร์เรย์ฟังก์ชันหรือพร็อกซีอื่นและ handlerเป็นวัตถุที่มีคุณสมบัติเป็นฟังก์ชัน สิ่งนี้กำหนดลักษณะการทำงานของพร็อกซี
const proxy = new Proxy(target,handler)
วิธีการจัดการ
วัตถุตัวจัดการมีกับดักสำหรับ Proxy กับดักทั้งหมดเป็นทางเลือก หากไม่ได้กำหนดกับดักลักษณะการทำงานเริ่มต้นคือการส่งต่อการดำเนินการไปยังเป้าหมาย วิธีการจัดการทั่วไปบางอย่างมีดังนี้ -
ซีเนียร์ No | วิธีการและคำอธิบาย |
---|---|
1 | handler.apply () กับดักสำหรับการเรียกใช้ฟังก์ชัน |
2 | handler.construct () กับดักสำหรับตัวดำเนินการใหม่ |
3 | handler.get () กับดักสำหรับรับค่าคุณสมบัติ |
4 | handler.set () กับดักสำหรับการตั้งค่าคุณสมบัติ |
5 | handler.has () TA กับดักสำหรับตัวดำเนินการใน |