⊗jsSpExcInr 137 of 294 menu

แนะนำสถานการณ์ยกเว้นใน JavaScript

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

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

อย่างไรก็ตาม นี่ไม่เป็นความจริงเสมอไป ระหว่างการส่ง ข้อมูลผ่านเครือข่าย การเชื่อมต่อขาดหายและข้อมูล มาถึงเราในรูปแบบที่ไม่ถูกต้อง หรือไม่มาเลย ระหว่างการเขียนไฟล์ ปรากฏว่า พื้นที่บนฮาร์ดดิสก์ที่จัดสรรให้เรา หมด และไฟล์ไม่สามารถเขียนได้ ระหว่างการอ่านไฟล์ ปรากฏว่าไม่มีไฟล์ดังกล่าว และเราไม่มีที่ไหนจะอ่าน ระหว่างการพิมพ์ข้อมูลไปยังเครื่องพิมพ์ เกิด สายเคเบิลที่เชื่อมต่อเครื่องพิมพ์และคอมพิวเตอร์ขาด

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

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

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

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

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

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

บ่อยครั้งมากที่ว่าสถานการณ์นั้นเป็นสถานการณ์ยกเว้นหรือ ไม่ ขึ้นอยู่กับภาษาโปรแกรม ใน หลายภาษา หากเกิดการหาร ด้วยศูนย์ขึ้นมา - นี่ถือเป็นข้อยกเว้น (เนื่องจาก ห้ามหารด้วยศูนย์) แต่ใน JavaScript - ไม่ถือว่าเป็น (ใน JavaScript สามารถหาร ด้วยศูนย์ได้)

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ