JavaScript

JavaScript While Loop
حلقات التكرار loops - جُملة while في لغة جافا سكريبت

سنتعلم في هذا الدرس ال  while Loop Syntax  وكيفية استخدامها ولماذا تستخدم

نستخدم الحلقة while إذا كنا نريد تنفيذ الكود عدة مرات, ولكننا لا نعرف كم مرة بالتحديد لأننا نريد إيقاف التنفيذ إذا تحقق شرط معين. هذه الحلقة تتوقف عن تكرار نفسها إذا تحقق الشرط الذي وضعناه لها. هنا كأننا نقول: " طالما أن الشرط لم يتحقق إستمر في تكرار الكود ".


التاريخ

05 نوفمبر 2021

الدروس

146

المستوى

العامة

اللغة

انجليزي

المشاهدات

2826

المواضيع

24
الشروحات chevron_left JavaScript While Loop chevron_left JavaScript

JavaScript While Loop
حلقات التكرار loops - جُملة while في لغة جافا سكريبت

</> JavaScript While Loop
حلقات التكرار loops - جُملة while في لغة جافا سكريبت

حلقات التكرار while loop هي اشبه بحلقات التكرار for loop ولكن مع الاختلاف البسيط وهي الأكثر استخداماً لانها يتم تمرير لها عدد أقل من العوامل أو المعطيات parameters.


  • يتم إعطاء حلقة التكرار while loop عامل واحد يسمي expression.
  • تعمل حلقة التكرار while loop عندما يكون expression صحيحاً أي انه true.
  • يتم تنفيذ الأوامر البرمجية المحجوزة داخل الكُتلة البرمجية مراه واحدة أو عدة مرات بناء علي expression صحيحاً أي انه true.
  • يمكن تهيئة قيمة مبدئية خارج حلقة التكرار while loop يمكن أستخدامها ودمجها مع التكرار وهذا اختيارياً.
  • يمكن أستخدام عمليات الزيادة والنقصان علي القيمة المهيئة داخل حلقة التكرار  while loop.

</> While loop syntax in JavaScript
طريقة كتابة While loop في لغة جافا سكريبت

  • تبدأ while loop بكلمة while بحروف صغيرة.
  • يتبع for الأقواس  () parentheses.
  • يتم تمرير عامل واحد فقط بداخل الأقواس () parentheses وهو :


  1. expression متغير أو شرط وبناء عليه اذا كان صحيحاً true يتم تنفيذ حلقات التكرار.
  • يتبع for الأقواس  () parentheses أقواس مجُعدة {} curly braces وهي منطقة مخصصة لأضافة الأوامر البرمجية التي سوف تقوم لغة جافا سكريبت بتكررارها عدة مرات.


يمكن ان يكون لحلقات التكرار while :

  1. اختياري : initialization متغير يتم تهيئتة بقيمة محددة قبل أن يتم التكرار قبل while loop.
  2. اختياري : iteration statement هو اضافة عملية النقصان أو الزيادة علي المتغير الذي قمنا بتهيئته عند بداية for يتم اضافته داخل الأقواس المجُعدة curly braces.
while loop Syntax

طريقة كتابة for loop في لغة جافا سكريبت

for (expression)
{
   /* code will execute */
}
while loop Syntax

طريقة كتابة for loop في لغة جافا سكريبت

/* initialization (Optional) */
for (expression)
{
   /* code will execute */
  /* iterator  (Optional) */
}

</> Initialization value while loop in JavaScript
قيمة التهيئة بداخل while loop في لغة جافا سكريبت

  • عملية التهيئة Initialization في حلقات التكرار while loops هي عملية تعيين assign قيمة أولية لمتغير variables ما.
  • تبدأ حلقات التكرار while loop بقيمة التهيئة Initialization وهي اضافة قيمة ما لمتغير ما.
  • بناء علي هذة القيمة الأولية يتم انقاصها أو زيادتها مع كل حلقة تكرار.
  • يمكننا تهيئة عدد غير محددود من المتغيرات variables  قبل قبل بدء التكرار while loop.
Initialization value

قيمة التهيئة الأولية تكون بداخل الأقواس وهي أول عامل يتم تمريرة ل for loop في لغة جافا سكريبت.

let i = 0;
while(expression) {
  //do somthing
}
ملاحظات هامة
ليس ضرورياً إستخدام قيمة التهيئة Initialization في JavaScript يمكنك تجاهلها وسوف يعمل التكرار loop بدونها.

</> expression value while loop in JavaScript
جملة الاختبار بداخل while loop في لغة جافا سكريبت

  • expression هو متغير أو شرط وبناء عليه اذا كان صحيحاً true يتم تنفيذ حلقات التكرار.
  • يمكن أن يتم تعريف متغير variable خارج حلقة التكرار while loop والتحقق من أنه كان صحيحاً ام غير صحيح true or false.
  • يمكن أستخدام عوامل المقارنة Comparison Operators مع expression للتحقق من قيمة ما مقابل قيمة اخري.
  • لا يعمل التكرار إلا في حالة واحدة إذا كان قيمة expression صحيحة true.
  • تتجاهل لغة جافا سكريبت الأوامر البرمجية المحجوزة بداخل الكُتلة البرمجية بين الأقواس curly braces في حال كان الشرط غير صحيح false.
expression

قيمة expression تكون true أو false وبناء عليه يعمل التكرار مره أو عدة مرات في لغة جافا سكريبت.

let i = 0;
while(i < 10) {
  /* iterator can be here */
  /* Do something */
 /* iterator can be here */
}

</> iterator while loop in JavaScript
زيادة أو انقاص قيمة التهيئة في حلقات التكرار while loop في لغة جافا سكريبت

  • iterator هو اضافة عملية النقصان أو الزيادة علي المتغير الذي قمنا بتهيئته بداخل while loop..
  • يعمل iterator بعد أنتهاء كل حلقة تكرار loop بعد تنفيذ جميع الأوامر البرمجية المحجوزة بداخل الأقواس المُجعدة {} curly braces داخل while loop.
  • ليس ضروري استخدام iterator يمكنك تجاهلها وسوف يعمل التكرار loop بدونه ولكن سوف يتم التكرار عدد لا نهائي من المرات.
  • iterator يمكن ان تستخدم اي شئ بداخله مثل النقصان بدل عملية الزيادة increment (i--) او عملية زيادة increment (i++) أو أي شئ أخر يمكنك تنفيذة.
  • يمكن أن يتم بدء حلقة التكرار while loop  بأضافة أو انقاص قيمة iterator قبل بدء تنفيذ أي أمر برمجي.
  • يكتب iterator دائماً بداخل while loop.
for loop example

مثال علي حلقات التكرار for loop في لغة جافا سكريبت

let i = 0;
while(i < 10) {
  document.write("The number is " + i + "<br>");
  i++;
}

في المثال السابق:

  • قيمة التهيئة initialization هي انشاء متغير قبل بدء التكرار loop و (var i = 1).
  • الشرط condition هو اضافة شرط للتكرار loop لكي يقوم loop بالبدء وتنفيذ الأوامر البرمجية حتي أن يصبح الشرط غير صحيح false حتي أن تصل i = 11.
  • ال iteration تقوم باضافة 1 علي قيمة ال i  في كل مرة بعد تنفيذ ال code block (i++).

</> For vs While in JavaScript
مقارنة بين حلقات التكرار for و while في لغة جافا سكريبت

هناك مجموعة فروق بين حلقات التكرار for loop وحلقات التكرار while loop في لغة جافا سكريبت.

[initialization];
while ([condition]){
  [itrator] /* can be here */
  /* code that's executed here */
  [itrator] /* also can be here */
}
for ([Initialization];[expression];[itrator]){
  /* code that's executed here*/
}
BASIS FOR WHILE

Declaration

الشرط

for(initialization; condition; iteration){ //body of 'for' loop } while ( condition) { statements; //body of loop }

Format

الشكل

Initialization, condition, iteration تتم كتابتهم بداخل ال حلقة التكرار loop الشرط condition فقط هو الذي يكتب داخل حلقة التكرار loop

Use

الأستخدام

يستخدم فقط عندما نكون علي علم مسبقاً بعدد التكرار iterations يستخدم فقط عندما يكون رقم التكرار iterations غير معروف

Condition

الشرط

إذا لم يتم وضع الشرط في for فإن ال loop يتكرر مرات لا نهائية إذا لم يوضع الشرط في while فإنه يظهر خطأ في عملية التشغيل

Initialization

التهيئة

في ال for اذا تمت عملية التهيئة initialization لا تتكرر مرة ثانية اذا تمت عملية التهيئة initialization اثناء التحقق من الشرط condition يتكرر initialization في كل مره

itrator

المكرر


Iterator يكتب في البداية Iterator يكتب في block code

</> Do While Loop in JavaScript
حلقات التكرر Do While في لغة جافا سكريبت

  • Do While Loop هي تنفيذ الكُتله البرمجية block of code قبل التحقق من الشرط condition.
  • تقوم لغة جافا سكريبت بعد تنفيذ الكُتله البرمجية بقراءة والتحقق من الشرط condition.
  •  في حال كانت نتيجة الشرط صحيح true سوف يتم التكرار مرة اخري.
  •  في حال كانت نتيجة الشرط غير صحيح false لن يتم تنفيذ التكرار مرة اخري ولن يتم تنفيذ الكًلة البرمجة مره اخري.
  • نستخدم حلقة التكرار do while في حال تنفيذ أمر برمجي عدة مرات, ولكن عدد التكرار غير محدد وغير معروف ومبني علي شروط معينة.
  •  do while تقرأ الكًتلة البرمجية أولاً قبل التحقق من الشرط بينما while تقرأ الشرط أولاً ثم بعدها يتم تنفيذ الأمر اذا كانت الشرط صحيحاً true.
do while loop Syntax

طريقة كتابة do while loop في لغة جافا سكريبت.

do {
  /* code block to be executed */
}
while (condition);
Do While Loop

سوف يتم تنفيذ الأمر البرمجي ثم زيادة المتغير i بعد تنفيذ الأمر وبعدها يتم قراءة الشرط وبناء عليه فأن الشرط في التكرار التالي قيمة غير صحيحة فلن يتم تنفيذ التكرار مره اخري.

let i = 1;
while (i == 1){
  document.write("Value now is : " + i);
  i++;
}
while loop with for

سوف يتم زيادة المتغير i قبل تنفيذ الأمر البرمجي وبعدها يتم قراءة الشرط وبناء عليه فأن الشرط في التكرار التالي قيمة غير صحيحة فلن يتم تنفيذ التكرار مره اخري.

let i = 0;
while(i == 0) {
  i++;
  document.write("The number is " + i + "<br>");
}
معلومات تهمك
  • لا تنسى تقييم الدروس لكي نُحدّث المُحتوى باستمرار حتى ينال إعجابك.
  • لا تنسى مشاركة الموقع مع أصدقاءك حتى تعمّ الفائدة وتكون سبب في نفعهم.
مشاركة
0
0
0
0
عدد المشاركات
هل هذه المعلومات نالت إعجابك ؟
0
0
عدد التقييمات

لديك استفسار ؟

يسعدنا كثيرا مساعدتك في استيعاب افضل للأمور, فلا تترد مطلقا في الاتصال بنا في حال كانت لديك اية اسئله او استفسارات.