الدوال في الجافا سكريبت JavaScript
الدوال في الجافا سكريبت :-
الدوال جزء هام ورئيسي في البرمجة , حيث تمكن المبرمج من عمل كتلة من الكود تستطيع أن تؤدي وظيفة محددة أو أكثر بمجرد كتابة اسمها في أي جزء من برنامجك , وفي الجافا سكريبت يعامل الدوال كبرامج فرعية subroutions , كما تحتوي لغة جافا سكريبت علي الكثير من الدوال الداخلية التابعة لجافا سكريبت , كما يمكن أيضا تعريف دوال جديدة واستخدامها , وتنقسم أنواع الدوال إلي دوال داخلية معرف من قبل اللغة ودوال يمكن تعريفها وتخليقها من خلال المطور
- الصيغة العامة للدوال :-
function functionName(……,……)
{
جمل كود الجافا سكريبت
}
ويتم استدعاء الدالة عن طريق ذكر اسم الدالة كما سيتضح في الأمثلة القادمة
التعبيرreturn :
- يستخدم لتحديد قيمة موجودة بداخل التعبيرfunction, وتكون تلك القيمة صحيحة لأي نوع من البيانات
- الصيغة العامة للتعبير return :
return expression;
- أمثلة علي استخدام return :
return x + y;
return true;
return false;
return oneArray{1};
return oneString Variable;
return 0;
return 8;
return "hi man";
مثال :
>HTML<
>HEAD<
>TITLE< Function and return </TITLE>
>SCRIPT> >!- -BEGINHIDING
Function calculate(a,b)
{
Var x = a;
Var y = b;
Var z =x + y;
return z;
}
Document.write(calculate((500,800));
//END HIDING - ->
</SCRIPT>
>/HEAD>
>BODY<
>/BODY<
>/HTML>
لاحظ أن الناتج هو 1300, وتلك النتيجة الطبيعية , كما أننا لو قمنا بإستبدال العبارة return z ,بالعبارة x+y return فلن يختلف الناتج .
التعبيرLabel :
- هو ليس حلقة تكرارية , لكنه يستخدم بداخل الحلقات التكرارية
- يستخدم التعبير Label لتحديد او تخصيص مجموعة من التعبيرات أو سطور البرنامج كمجموعة (بلوك)
- الصيغة العامة للتعبير Label :
Label :
{
مجموعة من االسطور المتتالية;
}
- التعبير Break :
هو ليس حلقة تكرارية بالرغم من استخدامه بداخل الحلقات التكرارية while , for , لكن يتم استخدامه لإنهاء تنفيذ الحلقة
0 يمكن استخدام التعبير Break كجزء من التعبيرات التنفيذية مثل العبارة الشرطية If , لكن بشرط وهو أنه لابد أن تكون تلك العبارة الشرطية بداخل حلقة تكرارية مثل for أو while
- الصيغة العامة للتعبير Break :
break ;
break label ;
>HTML<
>HEAD<
>TITLE< break and label >/TITLE<
>SCRIPT> <!- -BEGIN HIDING
X=0; // تخزين القيمة صفر في هذا المتغير
While (x < 7)
{
Document.write(x + "<BR>"); // 7 طباعة قيمة المتغير طالما أقل من
If (x ==5)
{
Document.write("<B>"+(x + 5000) + "</B>");
// 5إلي قيمته تصل عندما علي 5000إضافة
break; // لإنهاء التكرارbreak استخدمنا
}
Else
{
Document.write(x +10 + "<BR>");
إضافة 10علي المتغير في حال كانت قيمته لا تساوي 5 //
X ++;
}
}
//END HIDING -- >
>/SCRIPT>
>HEAD<
>BODY<
>/BODY<
>/HTML>
لتنفيذ نفس المثال السابق بإستخدام الحلقة التكرارية for , يكون شكل الكود :
>HTML>
>HEAD>
<TITLE> break and label </TITLE>
<SCRIPT> <!—BEGIN HIDING
For (x=0; x<7;x++)
{
Document.write(x + "<BR>");
If (x ==5)
}
Document.write("<B>" + (x +5000) + "</7B>");
break;
}
else
{
Document.write(x + 10+ "<BR>");
}
}
//END HIDING -->
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
التعبير Continue :
- يستخدم التعبير continue بداخل الحلقات التكرارية for, while, while ...do مثله مثل label, لbreak
- يستخدم هذا التعبير لتوجيه التنفيذ إلي سطر بداية الحلقة التكرارية وعندما يستخدم مع While يوجه التنفيذ لشرط مباشرة ..
- الصيغة العامة للتعبير continue :
Continue;
Continue label ;
مثال :
>HTML>
>HEAD>
<TITLE> continue Statement</TITLE>
<SCRIPT> <!—BEGIN HIDING
For (x=0;x<7;x++)
{
Document.write(x + "<BR>");
If (x ==5)
{
Document.write("<B>"+(x +5000) +"</B><BR>");
continue;
}
else
{
Document.write(x + 10+ "<BR>");
}
}
//END HIDING-- >
</SCRIPT>
</HEAD>
<BODY>
</BODY>
>/HTML>
- مثال بإستخدام التعبيرين label, continue :
>HTML>
>HEAD><TITLE>continue and label</TITLE>
<SCRIPT><!-- BEGIN HIDING
X=0;
Y=0;
myLabel1 :
while (x < 10)
{
Document.write("x=" + x + "<BR>");
myLabeled2 :
while (y < 8)
{
If (y ==5)
{
Document.write("y= + 10) + "<BR>");
y+;
continue myLabeled1;
}
Else
{
Document.write("y=" + (y + 100) + "<BR>");
y++
continue myLabeled2;
}
}
x+=3;
}
//END HIDING -->
>/SCRIPT>
>/HEAD>
>BODY></BODY>
</HTML>
thanks it was really great work.
ردحذفاحسنتم وبوركتم
ردحذف