يسمح التعبير Try...Catch بفحص الأخطاء لمجموعة من الأكواد .
فحص الأخطاء في الجافاسكربت JavaScript
عند فتح صفحات الانترنت فإن بعض الرسائل تظهر لنا وتخبرنا بأن هناك خطأ او كود منتهي الصلاحية ثم يسألنا " هل تريد تصحيح الخطأ" . بصراحة إن رسائل الأخطاء مفيدة للمطورون والمبرمجون إلا أنها ليست مفيدة للمستخدمون لذلك نرى غالباً خروج المستخدم عند مشاهدة رسائل كهذه .
في هذا الدرس ستتعلم كيفية تصحيح الأخطاء والتحكم بها وبذلك لن تخسر زوار موقعك .
تعبير Try...Catch
يسمح التعبير Try...Catch بفحص الأخطاء لمجموعة من الأكواد . تحتوي خاصية try على الكود الذي يجب تشغيله ثم catch التي بدورها تحتوي على الكود الذي سيظهر رسالة الخطأ في الكود .
التركيبة
try { الكود الذي سيتم تشغيله } catch(err) { الكود الذي سيظهر رسالة الأخطاء }
لاحظ بأن تعبير try...catch مكتوب بأحرف صغيرة . لا يجب كتابته بأحرف كبيرة لأنه سيولد أخطاء في الكود .
شرح المثال التالي
يفترض في المثال التالي إظهار رسالة "مرحباً بك في المعهد العربي للبرمجة" عند الضغط على الزر . الا أن هناك خطأ في كتابة الكود في الكود الوظيفي message() .
أي أن الوظيفة alert() تم كتابتها بشكل خاطئ وهو adddlert() . وهنا يحدث خطأ في الجافاسكربت . وباستخدام التعبير catch سيحصل على الخطأ ويظهر الخطأ الذي حصل برسالة أخرى لمعرفة نوع الخطأ وإصلاحه .
مثال
<html> <head> <script type="text/javascript"> var txt=""; function message() { try { adddlert("مرحباً بالزائر"); } catch(err) { txt="حصل خطأ في هذه الصفحة . nn"; txt+="وصف الخطأ هو : " + err.message + "nn"; txt+="اضغط OK للمتابعةnn"; alert(txt); } } </script> </head> <body> <input type="button" value="إظهار الرسالة" onclick="message()" /> </body> </html>
في المثال التالي سيتم استخدام صندوق التوكيد لعرض رسالة تخبر المستخدم بأن يضغط على OK لإكمال إظهار الصفحة أو إلغاء Cancel للذهاب الى الرصفحة الرئيسية . ان تم اعطاء نتيجة صحيحة فإن الكود لن يظهر شي .
مثال
<html> <head> <script type="text/javascript"> var txt=""; function message() { try { adddlert("مرحباً بك أيها الزائر"); } catch(err) { txt="هناك مشكلة في هذه الصفحة nn"; txt+="إضغط على OK لعرض النتيجة , n"; txt+="أو إلغاء Cancel للذهاب إلى الصفحة الرئيسية nn"; if(!confirm(txt)) { document.location.href="http://www.w3arabiconline.com/"; } } } </script> </head> <body> <input type="button" value="إظهار الرسالة" onclick="message()" /> </body> </html>
تعبير throw
يمكن استخدام تعبير throw مع try … catch لإنشاء استثناء للخطأ .
ستتعلم المزيد عن هذا التعبير في الدرس القادم .
ليست هناك تعليقات:
إرسال تعليق