یکی از مهمترین و کاربردیترین دستورات در برنامهنویسی، استفاده از حلقهها (Loops) است. از حلقه در برنامهنویسی به منظور انجام عملیات تکراری اجرای بلوکی از کدها استفاده میشود. به بیان سادهتر در صورتی بخواهید که در برنامهنویسی یک پیام خاص به کاربرد به دفعات متعدد نشان داده شود، باید از حلقه استفاده کنید. در زبان جاوا اسکریپت نیز به عنوان یکی از کاربردیترین و محبوبترین زبانهای برنامهنویسی، حلقهها از اهمیت زیادی برخوردار هستند. حلقه While در جاوا اسکریپت یکی از مهمترین و کاربردیترین دستورات حلقه است که میتوان از آن برای انجام کارهایی مختلف استفاده کرد. در این مقاله بلاگ کندو با حلقه While در جاوا اسکریپت آشنا شده و کاربردها و نحوه کار کردن با آن در این زبان محبوب را مورد بررسی قرار میدهیم.
سینتکس حلقه While در جاوا اسکریپت چگونه است؟
اولین قدم در کار با حلقه While در جاوا اسکریپت این است که با سینتکس (Syntax) یا فرم نوشتاری آن در زبان JavaScript آشنا شویم. سینتکس این حلقه در زبان جاوا اسکریپت به شکل زیر است:
1 while (condition) {
2 // body of loop
3 }
عملکرد حلقه While در جاوا اسکریپت چگونه است؟
بر اساس سینتکس بالا باید گفت که عملکرد حلقه While در جاوا اسکریپت به صورت زیر است:
- در قدم اول حلقه While، شرایط (Condition) که در داخل پرانتز آمده را ارزیابی و بررسی میکند.
- در این مرحله اگر شرط True (صحیح) ارزیابی شود، کدهایی که در داخل حلقه آمده اجرا میشوند.
- در مرحع بعد وجدد شرط موجود در حلقه مورد بررسی و ارزیابی قرار میگیرد
- تا زمانی که ارزیابی شرط، True باشد، کدهای داخل حلقه اجرا میشود و زمانی متوقف میشود که شرط، False ارزیابی شود.
- در صورتی که شرط False ارزیابی شود، در این مرحله اجرای کدهای داخل حلقه متوقف شده و برنامه از حلقه خارج خواهد شد.
به منظور درک بهتر عملکرد حلقه While در جاوا اسکریپت به یک مثال ساده که در ادامه آمده است، توجه کنید. در این مثال اعداد 1 تا 5 با استفاده از حلقه While در خروجی نمایش داده میشوند:
1// program to display numbers from 1 to 5
2
3// initialize the variable
4
5let i = 1, n = 5;
6
7
8
9// while loop from i = 1 to 5
10
11while (i <= n) {
12
13 console.log(i);
14
15 i += 1;
16
17}
در این مثال خروجی به صورت زیر خواهد بود:
1
2
3
4
5
در خصوص این مثال باید گفت که نحوه عملکرد حلقه While در جاوا اسکریپت مطابق جدول زیر است:
تکرار | متغیر | شرط: i <= n | عملیات |
اول | i = 1 n = 5 | true | 1 را چاپ میکند. i را به 2 افزایش میدهد. |
دوم | i = 2 n = 5 | true | 2 را چاپ میکند. i را به 3 افزایش میدهد. |
سوم | i = 3 n = 5 | true | 3 را چاپ میکند. i را به 4 افزایش میدهد. |
چهارم | i = 4 n = 5 | true | 4 را چاپ میکند. i را به 5 افزایش میدهد. |
پنجم | i = 5 n = 5 | true | 5 را چاپ میکند. i را به 6 افزایش میدهد. |
ششم | i = 6 n = 5 | false | حلقه خاتمه خواهد یافت. |
همانطور که در مشاهده میکنید حلقه While در جاوا اسکریپت تا زمانی که شرط یعنی اعداد 1 تا 5 هستند تکرار شده و عمل میکند و با وارد شدن عدد 6 شرط False شده و حلقه خاتمه پیدا میکند.
حلقه do while در جاوا اسکریپت چیست؟
حلقه do While به عنوان نوعی از حلقه While در جاوا اسکریپت دارای سینتکس زیر است:
1do {
2
3 // body of loop
4
5} while(condition)
بر اساس سینتکس بالا نحوه عملکرد این حلقه در جاوا اسکریپت به صورت زیر است:
- در مرحله اول بدنه و دستورات حلقه اجرا شده و پس از آن شرطها بررسی و ارزیابی میشوند.
- در صورتی شرط True ارزیابی شود، حلقهای در داخل دستور وجود دارد تکرار شده و مجدد اجرا میشود.
- در این مرحله مجدد حلقه مورد ارزیابی قرار میگیرد و در صورتی که مجدد شرط True ارزیابی شود، حلقه داخل دستور تکرار میشود.
- این فرایند زمانی به پایان میرسد که در حلقه شرط False ارزیابی شود تا به این صورت حلقه خاتمه پیدا کند.
حلقه Do While به حلقه While در جاوا اسکریپت شباهت زیادی دارد اما با این حال یک تفاوت بارز بین این دو حلقه وجود دارد. بارزترین تفاوت این دو حلقه در زبان برنامهنویسی جاوا اسکریپت این است که در حلقه Do While بر خلاف حلقه Wile بدنه و دستورات حداقل یک بار اجرا میشوند. برای درک بهتر عملکرد حلقه Do While مثال بالا را با استفاده از این حلقه مشاهده کنید:
1// program to display numbers
2
3let i = 1;
4
5const n = 5;
6
7
8
9// do...while loop from 1 to 5
10
11do {
12
13 console.log(i);
14
15 i++;
16
17} while(i <= n);
خروجی این مثال مانند اجرا توسط حلقه While در جاوا اسکریپت به صورت زیر است:
1
2
3
4
5
در جدول زیر میتوانید عملکرد حلقه Do While را مشاهده کنید:
تکرار | متغیر | شرط: i <= n | عملیات |
i = 1 n = 5 | بررسی نشده | 1 را چاپ میکند. i را به 2 افزایش میدهد. | |
اول | i = 2 n = 5 | true | 2 را چاپ میکند. i را به 3 افزایش میدهد. |
دوم | i = 3 n = 5 | true | 3 را چاپ میکند. i را به 4 افزایش میدهد. |
سوم | i = 4 n = 5 | true | 4 را چاپ میکند. i را به 5 افزایش میدهد. |
چهارم | i = 5 n = 5 | true | 5 را چاپ میکند. i را به 6 افزایش میدهد. |
پنجم | i = 6 n = 5 | false | حلقه خاتمه خواهد یافت. |
در واقع بزرگترین تفاوت حلقه Do While با حلقه While در جاوا اسکریپت این است که در حلقه Do While در مرحله اول بدون بررسی شدن شرط، بدنه و دستورات یک بار اجرا میشوند و از مرحله بعدی است که شرط مورد ارزیابی قرار میگیرد. در تمامی آموزشهایی که با عنوان دوره جاوا اسکریپت برگزار میشود، باید بتوانید نحوه کار با انواع حلقهها را یاد بگیرید. بدون این موضوع، نمیتوانید در برنامه نویسی js پیشرفت کنید.
خطاهای رایج در هنگام نوشتن حلقه While در جاوا اسکریپت کدام است؟
در کدنویسی حلقه While در جاوا اسکریپت خطاهای رایجی وجود دارد که باید نسبت به آنها آگاهی داشته تا بتوان از بروز آنها جلوگیری کرد:
- مقداردهی اولیه متغیر مورد استفاده در شرط حلقه فراموش شود
- بهروزرسانی متغیرهای استفاده شده در شرط حلقه فراموش شود
- اختلاف یک واحد در تعداد تکرارهای حلقه وجود داشته باشد
اگر این مطلب برای شما مفید و آموزنده بود، مطلب حلقه for در جاوا اسکریپت را هم در بلاگ کندو بخوانید.
سخن آخر
در زبانهای برنامهنویسی به منظور انجام یک اقدام از دستورات مختلفی استفاده میشود. هر کدام از دستورات ویژگیها و کاربردهای خاص خود را داشته و در موقعیت و زمان مناسب به کار گرفته میشوند. در صورتی که در برنامهنویسی با جاوا اسکریپت نیاز به تکرار یک عمل وجود داشته باشد از دستوری به نام حلقه (Loop) استفاده میشود. حلقه While در جاوا اسکریپت یکی از کاربردیترین حلقهها محسوب میشود که یک عمل را تا زمانی که یک شرط برقرار باشد تکرار میکند و تنها در صورتی حلقه خاتمه پیدا میکند که شرط برقرار نباشد.
برای شروع آموزش برنامه نویسی js میتوانید در دوره های آموزشگاه مهندسی کندو ثبت نام کنید. برای دانشجویان تهرانی، امکان شرکت در دورههای حضوری فراهم است و دانشجویان خارج از تهران هم میتوانند در دورههای آنلاین ثبت نام کنند.
سوالات متداول
حلقه While در جاوا اسکریپت چییست؟
با استفاده از این دستور در زبان برنامهنویسی جاوا اسکریپت میتوان حلقهای را ایجاد کرد که تا زمان True ارزیابی شدن شرط تعیین شده تکرار و اجرا میشود
مهمترین ویژگی حلقه While در جاوا اسکریپت چیست؟
در این حلقه عملکرد به این صورت است که ابتدا شرط مورد ارزیابی قرار گرفته و بر اساس آن دستور اجرا میشود.
حلقه While بینهایت در جاوا اسکریپت چیست؟
در آموزش برنامه نویسی، حلقه بی نهایت به حلقهای گفته میشود که شرط موجود در آن همیشه True ارزیابی شده و به همین دلیل حلقه تا زمان پر شدن حافظه تکرار و اجرا خواهد شد.