วันนี้ฉันพบสถานที่ที่ง่ายต่อการทำผิดพลาดเมื่อเขียนโค้ด เมื่อเราประกาศตัวแปรเรามักจะมีคำจำกัดความ API ที่แตกต่างกันเนื่องจากเบราว์เซอร์ที่แตกต่างกันมีเบราว์เซอร์ที่แตกต่างกันจากนั้นใช้วิธีการเขียนต่อไปนี้เพื่อพิจารณาว่าแอตทริบิวต์ใดเป็นตัวอย่างเช่น:
การคัดลอกรหัสมีดังนี้: var fullscreenelement = document.mozfullscreenelement || document.webkitfullscreenelement ||
ใช้ || เพื่อตรวจสอบคุณลักษณะที่จะใช้
แต่ระวังเกี่ยวกับการตัดสินเมื่อค่าของจาวาสคริปต์ถือเป็นเงื่อนไข
ตัวอย่างเช่น:
คัดลอกรหัสดังต่อไปนี้: var sleft = window.screenleft ||
console.log (sleft);
รหัสนี้หวังว่า ScreenLeft จะส่งคืน Window.screenleft และ Firefox จะกลับมาที่ Window.screenx
อย่างไรก็ตามหาก Screenleft เท่ากับ 0 มันจะเข้าสู่เงื่อนไขต่อไปนี้แล้ว GG
ดังนั้นจึงขอแนะนำให้ใช้ HasownProperty หรือ typeof เพื่อตัดสินคุณค่าที่แม่นยำยิ่งขึ้น
การคัดลอกรหัสมีดังนี้: var sleft = window.screenleft;
if (! window.hasownproperty ('screenleft')) sleft = window.screenx;