برنامه نویسی و ITجاوا اسکریپت

دستور continue  در جاوا اسکریپت

در این پست آموزشی از مکتب خونه  قصد داریم در رابطه با دستور continue در جاوا اسکریپت باهم به گفتگو بپردازیم. دستور continue برای پرش از تکرار فعلی حلقه استفاده می شود و جریان کنترل برنامه به تکرار بعدی می رود. کنترل کامل برای رسیدگی به عبارات حلقه در جاوا اسکریپت وجود دارد. گاهی اوقات، موقعیتی پیش می‌آید که ما می‌خواهیم برخی از کدهای حلقه را رد کنیم و به تکرار بعدی برویم. با استفاده از عبارت continue در جاوا اسکریپت می توان به این ویژگی دست یافت.

ویدئو پیشنهادی: آموزش جاوا اسکریپت

دستور continue در جاوا اسکریپت

عبارت continue از یک تکرار در حلقه پرش میکند.  تکرار را در حلقه می شکند و به اجرای تکرار بعدی در حلقه  را ادامه می دهد. این دستور در جاوا اسکریپت کاربرد فراوانی به خصوص در به کاربردن حلقه ها دارد.، در ادامه با این دستور و نحوه به کار بردن آن آشنا خواهیم شد.

در صورت وقوع یک شرط مشخص، عبارت continue یک تکرار (در حلقه) را می شکند و با تکرار بعدی در حلقه ادامه می دهد. تفاوت بین continue  و دستور break، به جای “پرش به بیرون” از یک حلقه، عبارت continue “پرش روی” یک تکرار در حلقه است.

با این حال، هنگامی که دستور continue اجرا می شود، برای انواع مختلف حلقه ها رفتار متفاوتی دارد:

  • در یک حلقه while شرط تست می شود و اگر درست باشد حلقه دوباره اجرا می شود
  • در یک حلقه for، ابتدا عبارت افزایشی (به عنوان مثال i++) ارزیابی می‌شود و سپس شرط مورد آزمایش قرار می‌گیرد تا مشخص شود آیا باید تکرار دیگری انجام شود یا خیر.

در ادامه هر دوی کاربرد آن در حقله ها را مورد بررسی قرار خواهیم داد.

سینتکس دستور continue در جاوا اسکریپت به این صورت است:

continue [label];

توجه: درج برچسب یک امر اختیاری است و به ندرت استفاده می شود.

دستور continue در حلقه for

در یک حلقه for، دستور continue در جاوا اسریپت از تکرار فعلی پرش می‌کند و جریان کنترل به updateExpression می‌رود. به عبارتی دیگر هنگام استفاده از دستور continue در حلقه for، حلقه را به طور کامل خاتمه نمی دهد. در عوض، به عبارت تکرار کننده می پرد. به فلوچارت زیر در این رابطه دقت کنید:

فلوچارت دستور countinue در جاوا اسکریپت

مثال: به مثال زیر در استفاده از دستور continue در حلقه نام برده شده دقت کنید:

// program to print the value of i
for (let i = 1; i <= 5; i++) {

    // condition to continue    
    if (i == 3) {
        continue;
    }

    console.log(i);
}

خروجی به شکل زیر خواهد بود:

دستور continue در حلقه for

در برنامه فوق از حلقه for برای چاپ مقدار i در هر تکرار استفاده می شود. به عبارت continue در داخل حلقه توجه کنید.

if(i == 3) {
    continue;
}

این یعنی:

  • وقتی i برابر با 3 باشد، عبارت continue از تکرار سوم می گذرد.
  • سپس، i برابر 4 می شود و شرط تست و عبارت continue دوباره ارزیابی می شود.
  • از این رو، 4 و 5 در دو تکرار بعدی چاپ می شوند.

به نکات زیر در این رابطه توجه بفرمایید:

  1. توجه: دستور continue تقریباً همیشه با عبارات تصمیم گیری در برنامه نویسی استفاده می شود.
  2. توجه: دستور break به طور کامل حلقه را خاتمه می دهد. با این حال، دستور continue در جاوا اسکریپت فقط از تکرار فعلی صرف نظر می کند.
مقاله پیشنهادی: symbol در جاوا اسکریپت

دستور continue  در حلقه while

در یک حلقه while، continue از تکرار جاری پرش می‌کند و جریان کنترل برنامه به حالت while برمی‌گردد. دستور continue برای حلقه های while و do…while به همین صورت عمل می کند. هنگام استفاده از دستور continue در یک حلقه while، اجرای حلقه را به طور کامل خاتمه نمی دهد. در عوض، به حالت قبلی باز می گردد.

فلوچارت زیر نشان می دهد که دستور continue در یک دستور حلقه while چگونه کار می کند:

دستور continue  در حلقه while

به مثال زیر به خوبی دقت کنید و اگر متوجه آن نشدید توضیحات آن را بخوانید:

// program to calculate positive numbers only
// if the user enters a negative number, that number is skipped from calculation
// negative number -> loop terminate
// non-numeric character -> skip iteration
let sum = 0;
let number = 0;
while (number >= 0) {
    // add all positive numbers
    sum += number;
    // take input from the user
    number = parseInt(prompt('Enter a number: '));
    // continue condition
    if (isNaN(number)) {
        console.log('You entered a string.');
        number = 0; // the value of number is made 0 again
        continue;
    }
}
// display the sum
console.log(`The sum is ${sum}.`);

در برنامه فوق کاربر یک عدد را وارد می کند. حلقه while برای چاپ مجموع اعداد مثبت وارد شده توسط کاربر استفاده می شود. خروجی این قطعه کد به صورت زیر خواهد بود، توجه کنید که اعداد دلخواه را باید وارد کنید و نتیجه را مشاهده کنید.

نحوه استفاده از دستور continue در جاوا اسکریپت

به استفاده از عبارت continue توجه کنید.

if (isNaN(number)) {
    continue;
}

هنگامی که کاربر یک عدد/رشته غیر عددی را وارد می کند، عبارت continue از تکرار جاری می گذرد. سپس جریان کنترل برنامه به شرط حلقه while می رود.

هنگامی که کاربر عددی کمتر از 0 را وارد می کند، حلقه خاتمه می یابد. در برنامه فوق، isNaN برای بررسی اینکه آیا مقدار وارد شده توسط کاربر یک عدد است یا خیر استفاده می شود.

دستور continue  در جاوا اسکریپت برای حلقه تودرتو

هنگامی که از دستور continue در جاوا اسریپت در داخل دو حلقه تو در تو استفاده می شود، ادامه از تکرار فعلی حلقه داخلی صرف نظر می کند. به مثال زیر در این زمینه توجه کنید:

// nested for loops

// first loop
for (let i = 1; i <= 3; i++) {

    // second loop
    for (let j = 1; j <= 3; j++) {
        if (j == 2) {
          continue;
        }
        console.log(`i = ${i}, j = ${j}`);
    }
}

خروجی به شکل زیر خواهد بود:

دستور continue  در جاوا اسکریپت برای حلقه تودرتو

در برنامه فوق، هنگامی که دستور continue اجرا می شود، از تکرار جاری در حلقه داخلی صرف نظر می کند و جریان کنترل برنامه به updateExpression حلقه داخلی منتقل می شود.

بنابراین، مقدار j = 2 هرگز در خروجی نمایش داده نمی شود.

هنگام استفاده از حلقه‌های تودرتو، می‌توانید تکرار فعلی را نادیده بگیرید و جریان کنترل برنامه را می‌توانید به updateExpression یک دستور برچسب منتقل کنید. اما برچسب ادامه به ندرت در جاوا اسکریپت استفاده می شود زیرا این کار خواندن و درک کد را سخت تر می کند.

استفاده از دستور continue  در جاوا اسکریپت با برچسب

عبارت continue می تواند شامل یک برچسب اختیاری مانند این باشد:

continue [label];

به  مثال زیر در این زمینه توجه کنید:

حلقه تودرتو زیر جفت اعداد از 1 تا 3 را نمایش می دهد:

استفاده از دستور continue  در جاوا اسکریپت با برچسب

شکل زیر نحوه استفاده از دستور continue را با یک برچسب نشان می دهد:

دستور continue در جاوا اسکریپت با برچسب

برچسب ما در بالا outer نام دارد که در جلو عبارت continue قرار دارد. امیدوارم که مقاله ما در راىطه با دستور continue در جاوا اسکریپت مورد توجه شما قرار گرفته باشد.

کامل بهرامی

کامل بهرامی دانش‌آموخته کارشناسی ارشد رشته مهندسی کامپیوتر گرایش نرم‌افزار از دانشگاه ارومیه است. به حوزه کامپیوتر، برنامه‌نویسی و فناوری اطلاعات علاقه‌مند‌ است و هم اکنون به عنوان عضو تیم سئو و مدیر تیم نویسنده‌های مکتب خونه در این مجموعه فعالیت می‌کند.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا