do...while (اول انجام بده، بعد چک کن!)حلقه do...while هم مثل بقیه حلقهها کدهای شما رو تا زمانی که یک شرط خاص غلط (false) بشه تکرار میکنه؛ اما یک فرقِ بزرگ و اساسی با بقیه داره.
ساختار کلی این حلقه به این صورت هست:
do {
// کدهایی که باید تکرار بشن
} while (شرط مورد نظر);
توی حلقههای معمولی (مثل while یا for)، جاوااسکریپت اول شرط رو چک میکنه و اگر درست بود، کدهای داخل حلقه رو اجرا میکنه. اما توی حلقه do...while داستان برعکسه! جاوااسکریپت اول یکبار کدهای داخل بلاک do رو بدون هیچ چون و چرایی اجرا میکنه، بعد تازه میرسه به خط while و شرط رو چک میکنه!
اگر شرط درست (true) بود، دوباره برمیگرده بالا و کدها رو تکرار میکنه.
اگر شرط غلط (false) بود، حلقه متوقف میشه و میره سراغ بقیه کدهای صفحه.
نتیجه اخلاقی: کدهای داخل یک حلقه
do...whileحداقل یکبار حتماً اجرا میشن، حتی اگر شرطِ جلوی while از همان اولِ اول غلط باشه!
به این کد نگاه کن؛ ما یک شمارنده داریم که از صفر شروع میشه:
let i = 0;
do {
i += 1;
console.log(i);
} while (i < 5);
توی این حلقه چه اتفاقی میافته؟
برنامه وارد بخش do میشه. یکی به i اضافه میکنه (مقدار i میشه ۱) و عدد ۱ رو توی کنسول چاپ میکنه.
حالا به شرط میرسه: آیا ۱ از ۵ کوچکتره؟ بله (true). پس دوباره برمیگرده بالا.
این چرخه انقدر تکرار میشه تا مقدار i به عدد ۵ برسه. وقتی i شد ۵، شرطِ 5 < 5 غلط (false) میشه و حلقه بالاخره ترمز میکنه.
توی خروجی این کد، اعداد 1 و 2 و 3 و 4 و 5 رو به ترتیب خواهی دید.
این محتوا کاملا رایگان توسط تیم کدلپر ترجمه شده و در اختیار شما کاربران عزیز قرار گرفته است، هر گونه کپی برداری برای مقاصد غیر رایگان و بدون ذکر منبع، مورد پیگیری قانونی قرار میگیرد.
ترجمه شده از منبع: https://developer.mozilla.org/en-US/docs/Web/JavaScript