مدونة علم البرمجة والحاسوب
من حقك ان تتعلم اكثر

دورة جافا سكربت - Javascript الدرس الثالث



السلام عليكم ورحمه الله وبركاته

مساء الخير جميعا

اليوم بندأ بالفصل الثالث ان شاء ويحتوي على

*** عباره if الشرطيه ومثال توضيحي
*** العبارات البرمجيه if-else
*** العبارات البرمجيه switch
*** نظام التكرار for
*** نظام التكرار for-in
*** نظام التكرار while
*** نظام التكرار do-while
*** العباره البرمجيه break
*** العباره البرمجيه continue
*** استخدام العبارات البرمجيه with



اتمنى انكم تستفيدون منها بصراحه انا مستعده انزل

الدروس كل يوم بس اني تاركه اسبوع بين كل فصل وفصل للتطبيق يعني وتجريب الاكواد

مو مشكله نبدأ

بسم الله الرحمن الرحيم

قبل نبدأ فيه اكواد اذا حبيتم تطبقونها لازم تنبتهون منها لاني مو مسئوله عن اي

شيء بيصير للمتصفح


عبارة if الشرطيه

تستخدم الكلمه الرئيسيه if في تنفيذ الاختبار الشرطي الخاص بلغه جافا سكربت

من اجل التحقق من صحة المعادله الخاصه بالقيمه البولونيه. وسيتم تنفيذ العباره

البرمجيه التي تتفق مع الشرط عندما يقوم المصطلح بعرض قيمه true

التركيب الخاص بالعباره


كود:
if(test expression)statement to execulte when true;
وقد يحتوي الكود الذي سيتم تنفيذه على العديد من العبارات البرمجيه اذا كانت مدرجه

في زوج من الاقواس لتشكيل كتلة نصيه من العبارات.


كود:
<SCRIPT TYPE="text/javascript">

<!--

var msg,num

num=7;

if(num%2!=0){

msg="This is an odd number.";

alert(msg);

}

//-->

</SCRIPT>

في المثال السابق نستخدم باقي القسمه (%) لتحديد القيمه الموجوده في المتغير "num"

قابله للقسمه على 2 ام لا وتحتوي كتلة العبارات البرمجيه على عبارتين

احداهما لتحديد قيمة مجموعة الاحرف الخاصه بمتغير والاخرى لاستدعاء داله جافا سكربت


**** ملاحظة ****

واذا رغبت في التأكد من الرقم فردي فهذا تعبير التركيب

كود:
num(%2==1)


مثال يوضح الامر الخاص بــ if


كود:
<SCRIPT TYPE="text/javascript">

<!--

var username=null;

if(username==null){

username=prompt("please Enter Your Name","");

if(username!="")alert("welcom"+username);

}

//-->

</SCRIPT>

في المثال السابق يقوم باستدعاء لداله prompt() الخاصه بلغه جافا سكربت

ويعتبر الوسيط الاول عباره الرساله التي سيتم عرضها والوسيط الثاني هو القيمه الافتراضيه

المطلوبه في حقل الادخال في هذه الحاله لم يتم تعيين القيمه في الوسيط الثاني للداله

ويتم تحديد مدخلات المستخدم في المتغير "username" ويتم عرضها من خلال داله alert

عند تطبيق المثال سوف تخرج لك شاشه تطلب منك ادخال الاسم واذا رفضت وما دخلت الاسم

يصبح اسمك "null" مجهول يعني


العبارات البرمجيه if-else

يمكن استخدام الكلمه الرئيسيه else ي العباره البرمجيه التي تبدأ بــ if

لتقديم كود بديل بهدف تنفيذه اذا ثبت خطأ شرط الاختبار


ويعرف هذا ايضا بأسم التقسيم الشرطي ويحمل هذا التركيب

كود:
if(test expression)do this;else do this;

**** ملاحظة ****

يجب ان تضع فاصله منقوطه بعد العباره البرمجيه الخاصه بالكود الاول

قبل البدء في استخدام الكود البديل ((اي قبل كلمه else))


كود:
<SCRIPT TYPE="text/javascript">

<!--

var num=2,bool=false;

if(num==1&&bool==1)alert("TEST1 bool:"+bool);

else

if(num==2&&bool==1)alert("TEST2 bool:"+bool);

else

if(num==2&&bool==0)alert("TEST3 bool:"+bool);

else

if(num==3&&bool==0)alert("TEST4 bool:"+bool);

//-->

</SCRIPT>

في المثال السابق يمكنك اختبار العديد من المعادلات حتى يتم عرض قيمه true

عندما يتم تنفيذ الكود الذي يتبع المعادلة الصحيحة يجب ان تقوم بتجاهل أية اكواد

أخرى موجودة في العبارة البرمجيه "if-else"



العبارة البرمجية switch

من الممكن ان يعمل التقسيم الشرطي الذي يستخدم العباره البرمجيه "if-else" بصوره

فعاله اذا ما تم استخدام العباره البرمجيه "switch" عند التحقق من صحه او خطأ قيمة

متغير واحد فقط وتعمل العباره البرمجيه بشكل غير تقليدي فهي تقوم

بالتحقق من صحة الشرط ثم تقدم عنوانا يتلائم مع القيمه الناتجة ويتم تنفيذ الكود

المحلق بالعنوان المناسب واذا لم يكون العنوان مناسبا فان العباره البرمجيه

ستقوم بتنفيذ اي كود افتراضي محدد

وتستخدم الكلمه الرئيسيه case في تحديد العنوان بينما تستخدم الكلمه

الرئيسيه default في تحديد الكود الافتراضي ويجب ان تكون نهايه كود

العنوان بالكلمه break


كود:
<SCRIPT TYPE="text/javascript">

<!--

var num=2;

switch(num){

case 1:alert("This is case 1 code");break;

case 2:alert("This is case 2 code");break;

case 3:alert("This is case 3 code");break;

default:alert("This is default code");

}

//-->

</SCRIPT>


**** ملاحظة ****

سيعمل حذف الكلمات الرئيسيه break في نهايه العباره على تنفيذ الاكواد

الاخرى في العباره البرمجيه switch اما وجودها فيعني التجاوز عن جميع

هذه الاكواد والخروج من العباره البرمجيه



نظام التكرار "for"

يعتبر نظام التكرار "for" من اكثر انواع الانظمه التكراريه استخداما ويحمل هذاالتركيب


كود:
for(initializer,test,increment)statement;

يستخدم initializer في تحديد قيمه البدايه للعداد الخاص بحساب عدد مرات التكرار

في الدورة وقد يستخدم المتغير هنا لهذا الغرض كما انه يطلق عليه "i"

وفي كل دوره تكراريه يتم اختبار الشرط المنطقي وسيتم تشغيل دورة التكرار

فقط اذا كانت نتيجة الشرط true أما اذا كانت false فان دوره التكرار ستنتهي

وفي كل دوره تكراريه يزيد العدد العداد وستقوم دوره التكرار بتنفيذ الكود في العباره

البرمجيه ويمكن تنفيذ العديد من العباره البرمجيه ويمكن تنفيذ العديد من العبارات

البرمجيه اذا كانت مدرجه بين اقواس تحمل الشكل {} داخل مجموعة من العبارات البرمجيه

المثال التالي يوضح خمس دورات تكراريه ويقوم بتغيير القيمة

التي تم تحديدها لاثنين من المتغيرات في كل مره


كود:
<SCRIPT TYPE="text/javascript">

<!--

var a=0,b=0;

for(var i=0; i<5; i++){

a+=10;b+=5;

}

alert("FOR LOOP\n\n A is"+a+"...B is"+b);

//-->

</SCRIPT>

نظام التكرار For-In

يستخدم في حساب عدد المتغيرات او الخصائص داخل الكائن

واستخدامه نادرا في لغه جافا سكربت

المثال التالي يوضح الخصائص الممكنه داخل كائن window في متصفح ويب مايكروسفت ;)


كود:
<SCRIPT TYPE="text/javascript">

<!--

var i=0;a="";

for(property in window){

a+=property+"...";

}

alert(a);

//-->

</SCRIPT>

نظام التكرار while

يوجد نظام تكرار آخر يستخدم الكلمه الرئيسيه "while" متبوعا بتعبير يتم تقديره في القيمة

البولونيه اذا كانت نتيجه الاختبار true فانه سيتم تنفيذ الكود في مجموعه العبارات البرمجيه

وبعد ان يقوم الكود بتنفيذ الاختبار سيتم اختبار الشرط مرة اخرى وسيستمر نظام التكرار الى

أن تكون نتيجه الاختبار false


**** ملاحظة ****

يجب ان تقوم مجموعه العبارات البرمجيه بعرض الكود الذي سيؤثر

على شرط الاختبار من اجل تغيير نتيجة شرط الاختبار بهدف عرض قيمه false

والا فسوف يستمر الى ما لا نهايه لاحظ انه اذا كانت النتيجه في شرط الاختبار true

فان الكود الموجود في مجموعه العبارات البرمجيه لن يتم تنفيذه على الاطلاق


**** ملاحظة ****

يقوم نظام التكرار اللانهائي باغلاق النص وتدمير المتصفح (( ارجع اقراها كثير ;) ))


كود:
<SCRIPT TYPE="text/javascript">

<!--

var i=0,num=50;

while(i<15){

num--;

i++;

}

alert("LOOP stopped at" +i+ "\nnum is now" +num);

//-->

</SCRIPT>

نظام التكرار Do-While

تستخدم الكلمه الرئيسيه do في لغه جافا سكربت للدلاله على بدايه نظام التكرار"do-while"

وتكون متبوعه مجموعه من العبارات البرمجيه التي تحتوي على الكود الذي سيتم

تنفيذه بواسطه نظام التكرار ويجب تقييم المعادله

فاذا كانت نتيجه الاختبار true فان دوره التكرار ستبدأ بالكلمه الرئيسية "do"

وتستمر حتى تصبح النتيجه false

كود العباره البرمجيه على عكس نظام التكرار "while" سيتم تنفيذه

مره واحده بشكل دائم من خلال نظام التكرار "do-while" لأن

معادلة الاختبار لن يتم التعامل معها الا في نهايه نظام التكرار

في المثال التالي لن يتم تكراره لان قيمة العداد ستزيد الى 1 في عمليه التنفيذ

الاولى الخاصه بكود العباره البرمجيه ولذلك فان معادله

الاختبار الاول ستقوم بعرض قيمة false


كود:
<SCRIPT TYPE="text/javascript">

<!--

var i=0,num=50;

do{

num--;

i++;

}while(i<1);

alert("LOOP stopped at" +i+ "\nnum is now" +num);

//-->

</SCRIPT>

**** ملاحظة ****

يعتبر نظام التكرار while اكثر ملائمه من نظام التكرار do-while



العبارة البرمجيه Break

تستخدم في لغه جافا سكربت لانهاء نظام التكرار وإيقاف تنفيذه

ويتم وضع الكلمه الرئيسيه break داخل مجموعه العبارات البرمجيه التي

تحتوي على الكود الذي يجب ان يقوم نظام تكرار التكرار بتنفيذه كما أنها مسبوقه بالاختبار

الشرطي عندما تجد شرط الاختبار فان العباره البرمجيه break ستقوم بانهاء

نظام التكرار في الحال ولن يتم عمل دورات تكراريه اخرى

في المثال التالي لاحظ ان قيمه العداد لا تزال 3 لان الزياده في دوره التكرار الاخيره

لم يتم تطبيقها وسيقوم الاختبار الشرطي بعرض قيمه true عندما تصل قيمه العداد الى 3


كود:
<SCRIPT TYPE="text/javascript">

<!--

var i=0;

while(i<6){

if(i==3) break;

i++;

}

alert("BREAK\n\nLoop stopped at" +i);

//-->

</SCRIPT>

العبارة البرمجيه Continue

تستخدم الكلمه الرئيسيه Continue في انهاء دوره التكرار الحاليه

وتعمل نفس break يتم وضعها داخل مجموعه العبارات البرمجيه التي يحتوي على

الكود الذي يجب ان تقوم دوره التكرار بتنفيذه مسبوقا بشرط الاختبار

وعندما يتحقق شرط الاختبار فان الكلمه الرئيسيه Continue تقوم في الحال بوقف

نظام التكرار الحالي ولكن العديد من الدورات التكراريه ستستمر حتى تنتهي نظان التكرار

في المثال التالي يتحقق شرط الاختبار عندما تصل القيمه للعداد الى 3 ولذلك فان

السلسله الحرفيه المرتبه في هذا التكرار لن يتم تطبيقها ولكن نظام التكرار سيستمر


كود:
var i=0,str="";

while(i<5){

i++;

if(i==3)continue;

str +=i+"";

}

alert("CONTINUE\n\nLoop stopped:" +i+ "\n\nSeries:"+str);

استخدام البرمجيه With

تستخدم With للاشاره الى خصائص الكائن دون الحاجه الى اضافه اسم الكائن قبل اسم كل خاصيه

تحتوي صفحات الويب على الكائن document الذي يحتوي على الخاصيه forms للاشاره الى النماذج

الموجوده في صفحه الويب وقد تشتمل عناصر النموذج على القيم الخاصه بها طبقا للغه

جافا سكربت التوضيح بالمثال التالي


كود:
document.forms.order.user.value="NaWaL"

document.forms.order.city.value="NaNo"

مثال


كود:
with(document.forms.order){

user.value= "NaWaL:";

city.value= "Riadh";

}

وبكذا يكون خلصنا الفصل الثالث ونلتقي بالفصل الرابع ان شاء الله

أرشيف المدونة الإلكترونية

من انا ؟