JavaScript | โซ่เสริม

Javascript So Serim



การโยงทางเลือกเป็นคุณลักษณะที่ค่อนข้างใหม่สำหรับ JavaScript ที่ ECMA นานาชาตินำเสนอ ใช้เพื่อตรวจสอบคุณสมบัติของวัตถุที่ซ้อนกันลึกโดยไม่ต้องกังวลเกี่ยวกับคุณสมบัติที่ไม่มีอยู่ เป็นวิธีที่ปลอดภัยในการตรวจสอบค่าเหล่านั้นโดยไม่เกิดข้อผิดพลาด ตัวดำเนินการ chaining ทางเลือกส่งกลับค่าที่ไม่ได้กำหนดไว้แทนที่จะเป็นข้อผิดพลาด เมื่อไม่มีการอ้างอิง คุณลักษณะนี้ไม่ใช่สิ่งที่คุณต้องการอย่างแน่นอนในโค้ดของคุณ แต่มักจะพิสูจน์ได้ว่ามีประโยชน์มาก การเชื่อมโยงทางเลือกจะทำงานได้ดีที่สุดเมื่อคุณไม่แน่ใจจริงๆ ว่าข้อมูลจริงๆ แล้วจะเป็นอย่างไร เช่น เมื่อทำงานกับ API

โอเปอเรเตอร์การเปลี่ยนแปลงที่เป็นตัวเลือกจะดำเนินต่อไปตามเส้นทางจนกว่าจะถึงค่าคุณสมบัติหรือเกิดข้อผิดพลาด:

ให้พนักงาน = {
ชื่อจริง : 'จอห์น' ,
นามสกุล : 'โด้' ,
อายุ : 3. 4
} ;

คอนโซล บันทึก ( พนักงาน. ที่อยู่ ? . zip ) ;







หากเราพยายามเข้าถึงค่าคุณสมบัติเดียวกันโดยไม่ใช้ตัวดำเนินการ chaining ที่เป็นทางเลือก เราก็จะได้รับข้อผิดพลาด:



ให้พนักงาน = {
ชื่อจริง : 'จอห์น' ,
นามสกุล : 'โด้' ,
อายุ : 3. 4
} ;

คอนโซล บันทึก ( พนักงาน. ที่อยู่ . zip ) ;



การเชื่อมโยงทางเลือกในการเรียกเมธอด

การโยงทางเลือกยังใช้งานได้กับการเรียกเมธอด คุณสามารถใช้การโยงทางเลือกได้เมื่อคุณไม่แน่ใจว่ามีเมธอดภายในอ็อบเจ็กต์หรือไม่ ตัวอย่างกรณีการใช้งานคือการดึงข้อมูลจาก API ซึ่งอาจมีหรือไม่มีคุณลักษณะบางอย่างขึ้นอยู่กับอุปกรณ์ของผู้ใช้:





ให้พนักงาน = {
ชื่อจริง : 'จอห์น' ,
นามสกุล : 'โด้' ,
อายุ : 3. 4
} ;

คอนโซล บันทึก ( พนักงาน. กระบวนการ ? . ( ) ) ;

โดยไม่ต้องผูกมัดเพิ่มเติม:



ให้พนักงาน = {
ชื่อจริง : 'จอห์น' ,
นามสกุล : 'โด้' ,
อายุ : 3. 4
} ;

คอนโซล บันทึก ( พนักงาน. กระบวนการ ( ) ) ;

ตัวดำเนินการ chaining ที่เป็นตัวเลือกยังสามารถใช้ได้หลายครั้งภายในคำสั่งเดียวเพื่อหลีกเลี่ยงข้อผิดพลาด

การรวมการต่อสายโซ่เสริมเข้ากับตัวดำเนินการการรวมเป็น Nullish

โซ่เสริมสามารถจับคู่กับ ?? ตัวดำเนินการเพื่อให้ค่าเริ่มต้นในกรณีที่ไม่มีคุณสมบัติหรือวิธีการ:

ให้พนักงาน = {
ชื่อจริง : 'จอห์น' ,
นามสกุล : 'โด้' ,
อายุ : 3. 4
} ;

คอนโซล บันทึก ( พนักงาน. กระบวนการ ? . ( ) ?? 'ไม่มีฟังก์ชัน' ) ;

ค่าเริ่มต้นยังสามารถเรียกใช้ฟังก์ชันบางอย่างได้

การผูกมัดทางเลือกมากเกินไป

มีการแนะนำการผูกมัดที่เป็นตัวเลือกเพื่อเพิ่มความสามารถในการอ่านและความสง่างามของรหัส ควรใช้อย่างระมัดระวัง เพราะอาจทำให้ข้อผิดพลาดเงียบลงได้ การใช้ตัวดำเนินการ chaining ที่เป็นตัวเลือกมากเกินไปอาจทำให้เกิดปัญหาในโค้ดของคุณ

บทสรุป

การโยงทางเลือกเป็นคุณลักษณะที่เพิ่มเข้ามาเมื่อเร็วๆ นี้ของ JavaScript ซึ่งสามารถใช้เพื่อเข้าถึงคุณสมบัติและเมธอดภายในออบเจ็กต์ JavaScript ที่ซ้อนกันอย่างลึกโดยไม่ต้องกังวลเกี่ยวกับการตรวจสอบด้วยตนเองสำหรับการมีอยู่ของเมธอดและคุณสมบัติเหล่านั้น