بسم الله الرحمن الرحيم ******** " اللهم علمنا ما ينفعنا وانفعنا بما علمتنا انك انت العليم الحكيم " ------------------------------------------------------------------ تكلمنا فى دروس سابقة عن FUNCTIONS وكيفية كتابتها وتعرفنا على الباراميترات PARAMETERS ووضحناها ثم وضحنا العبارة RETURN وفصلنا فيها وضحنا اذا ما كانت الدالة FUNCTION ترجع قيمة RETURN VALUE او لا VOID كود HTML: <script type="text/javascript"> function aboutYou(yourName,yorAge,yourEducation,yorAddress) { if(yourName==""||yorAge==''||yourEducation==""||yorAddress=="") { document.write( "انت تركت احد الحقول فارغة "); } else{ document.write("<h3 dir='rtl'>شكرا لك تفاصيلك هى :</h3>"); document.write("<div>Your name : "+yourName+"<br />"+"Your age : " +yorAge+"<br />"+"Education : "+yourEducation+"<br />"+"Address : " +yorAddress+" <br /></div>"); } } function showDetails(){ aboutYou(prompt("ادخل اسمك",""), prompt("ادخل عمرك",""), prompt("ادخل مؤهلك الدراسى",""), prompt("ادخل عنوانك","")); } showDetails(); </script> سنتكلم اليوم باذن الله تعالى عن موضوع مهم جدا الا وهو الاخطاء ERRORS دعنا نفصل فى الاخطاء بشى بسيط لتوضح الصورة تنقسم الاخطاء فى البرمجة عموما الى منطقية LOGICAL ERRORS واخطاء فى بنية اللغة او نحوية SYNTAX ERROR اولا فى تراكيب اللغة SYNTAX ERROR ========================== تظهر هذه الاخطاء عند كتابة بعض الجمل فى اللغة بصورة خاطئة غير المعرفة فى اللغة مثل كتابة FUNCTION هكذا FANCTION او IF من غير الاقواس () ولا اقصد الاقواس {} لان هذه يمكن الاستغناء عنها فيما يسمى ب COLIN IF او اف المختصرة لاحظ كود HTML: <script type="text/javascript"> var x=10; if (x!=0) alert(x); /*هذه هى اف المحتصرة حيث انها تعتبر ما ياتى بعدها مباشرة ضمنها اى ضمن بنيتها وهى تنفذ السطر الذى بعدها مباشرة فقط اما ما بعد ذلك فلا يعتبر من ضمن عبارة اف */ var y = "zaizo"; if(y=="max") alert("no"); document.write(y); /* لاحظ هنا انه سيتم طباعة المتغير y وهضا يعنى انه if تاخد السطر الذى بعدها مباشرة وتتجاهل ما بعدها اى لا تعتبره ضمن ال block */ </script > كذلك if else و else if كذلك تحدث الاخطاء من هذا النوع عند عدم كتابة ؛ او semicolon ةتحدث ايطا عندما تكون الدالة function ترجع قيمة ولا يوجد متغير يستقبل هذه القيمة وتعتبر هذه الاخطاء سهلة الاكتشاف والمعالجة الاخطاء المنطقية logical errors ======================= وتحدث هذة الاخطاء عادة اثناء الربط linking او اثناء التشغيل Runtime او طلب ملف والملف غير موجود او الذهاب الى صفحة غير موجودة على السيرفر والاخيرة تسبب انهيار البرنامج او السكربت لانها تعتبر fatal error اى خطا قاتل وتعتبر هذه الاخطاء صعبة الاكتشاف الاخطاء فى java script ================ كما سبق اون ذكرنا الاخطاء فى البرمجة عامة كلها تاخد نفس الاتجاة الا ان فى لغات برمجة ال web تحدث بالاضافة الى ما سبق ان تكون هناك ارسال قيم من المستخدم غير مرغوب فيها او اتناءال response من ال server قد يكون اخطى ترجمة بعض الاكواد وسنتعرف على ذلك ان شاء الله عندما نصل الى ajax فى دروس متقدمة try & catch and throw ==================== تستخدم هذه العبارات فى الاكواد التى تحتمل ان يكون بها خطا مما يساعد على اكتشافها وتصحيحها ان وجدت الصيغة العامة للعبارات ============== try وهى تسمح لك بكتابة بلوكات من الاكواد التى تريد ان تكتشف او تتواقع ان يحدث بها خطاء catch وتعمل على اصطياد او اكتشاف الخطاء الممر فى العبارة try ان حدث وكان هناك خطاء اما throw تمكنك من اظهار رسائل خطا انت تريد ان تظهر للمستخدم وتمكنك من التحكم فى بلوكاتك كود HTML: <script type="text/javascript"> try{ //statements throw ; } catch(error) { //statments throw ; } </script> جرب ان تعمل {كذا} امسك الخطا( كذا /*وهنا يمكن تحديد الاخطاء التى تريد ان تمسك بها*/ ) { افعل كذا ؛ } وفى كلا try او catch يمكن استخدام throw كود HTML: <script type="text/javascript"> function getError() { try { adddlert("Welcome guest!"); // الخطاء هنا } catch(err) { document.write("<div dir='rtl'>"+"<b>" +"يوجد لديك خطاء هنا "+"<br />وصف الخطأ : "+err.message+"<br />"+"ارجع الى اكوادك " ); } } getError() </script> لاحظ فى الكود السابق اننا تعمدنا ان نحدث خطأ لاختبار العبارات السابقة ناتى ل throw الصيغة العامة لها ============ throw exception والخطا المتوقع يمكن ان يكون object او String او Number او Boolean كود HTML: <script type="text/javascript"> function myFunction() { try { var x = prompt("ادخل اى رقم هنا ","") if (x=="") throw "فارغ"; if(isNaN(x)) throw "ليس رقم"; if(x==null) throw "null"; } catch(err) { document.write(err); } } myFunction(); </script> الى هنا نختم موضوعنا عن الاخطاء مع لقاء اخر فى احداث الجافا سكربت event ================================= الحمد لله رب العالمين واشهد ان لا اله الا الله وان محمد رسول الله
<script type="text/javascript"> function aboutYou(yourName,yorAge,yourEducation,yorAddress) { if(yourName==""||yorAge==''||yourEducation==""||yorAddress=="") { document.write( "انت تركت احد الحقول فارغة "); } else{ document.write("<h3 dir='rtl'>شكرا لك تفاصيلك هى :</h3>"); document.write("<div>Your name : "+yourName+"<br />"+"Your age : " +yorAge+"<br />"+"Education : "+yourEducation+"<br />"+"Address : " +yorAddress+" <br /></div>"); } } function showDetails(){ aboutYou(prompt("ادخل اسمك",""), prompt("ادخل عمرك",""), prompt("ادخل مؤهلك الدراسى",""), prompt("ادخل عنوانك","")); } showDetails(); </script>
<script type="text/javascript"> var x=10; if (x!=0) alert(x); /*هذه هى اف المحتصرة حيث انها تعتبر ما ياتى بعدها مباشرة ضمنها اى ضمن بنيتها وهى تنفذ السطر الذى بعدها مباشرة فقط اما ما بعد ذلك فلا يعتبر من ضمن عبارة اف */ var y = "zaizo"; if(y=="max") alert("no"); document.write(y); /* لاحظ هنا انه سيتم طباعة المتغير y وهضا يعنى انه if تاخد السطر الذى بعدها مباشرة وتتجاهل ما بعدها اى لا تعتبره ضمن ال block */ </script >
<script type="text/javascript"> try{ //statements throw ; } catch(error) { //statments throw ; } </script>
<script type="text/javascript"> function getError() { try { adddlert("Welcome guest!"); // الخطاء هنا } catch(err) { document.write("<div dir='rtl'>"+"<b>" +"يوجد لديك خطاء هنا "+"<br />وصف الخطأ : "+err.message+"<br />"+"ارجع الى اكوادك " ); } } getError() </script>
<script type="text/javascript"> function myFunction() { try { var x = prompt("ادخل اى رقم هنا ","") if (x=="") throw "فارغ"; if(isNaN(x)) throw "ليس رقم"; if(x==null) throw "null"; } catch(err) { document.write(err); } } myFunction(); </script>
أنا لا أصدق احدا حتى اتأكد مما يقول ليس لضعف ثقــــــــة فيـــــــــــــــه ولكن هذا ما علمنى إياه ربى _____________________zAiZo_MaX________________
شكرآ لك ويشرفني الرد الاول على موضوعك متميز تنسيق جميل وشرح اروووع كذلك تقبل مروري
دورة الفايروسات الدرس الاول من هنا الدرس الثاني من هنا الدرس الثالث الدرس الرابع + كشف التلغيم الدرس الخامس facebook
الله يكرمك والله مبدع ومبرمج محترف
المشاركة الأصلية كتبت بواسطة Mr.JnOoN شكرآ لك ويشرفني الرد الاول على موضوعك متميز تنسيق جميل وشرح اروووع كذلك تقبل مروري يشرفى مرورك دائما اخى Mr.JnOoN\ ومروك هو الاورع تحياتى لك - - - تم التحديث - - - المشاركة الأصلية كتبت بواسطة Iraqe Hacker الله يكرمك والله مبدع ومبرمج محترف يشرفى مرورك اخى
شكراااا على المجهود الكبير تفبل مروري ...
لا إله الا الله محمد رسول الله اللهم انصر الاسلام والمسلمين عن أبي هريرة - رضي الله عنه - قال: قال رسول الله - صلى الله عليه وسلم -: ((كلمتان خفيفتان على اللسان، ثقيلتان في الميزان، حبيبتان إلى الرحمن: سبحان الله وبحمده، سبحان الله العظيم))؛ متفق عليه. (سحان الله وبحمده سبحان الله العظيم)
بارك الله فيك
معهد شموخ العرب لتطوير وبرمجة المنتديات
شكرا على مروركم الكريم اخوانى تحياتى لكم
عرض سحابة الكلمة الدلالية
قوانين المنتدى