در این مقاله از طراحی سایت در قسمت آموزش جاوا اسکریپت ، حلقه do-while در جاوا اسکریپت را توضیح می دهیم . ساختار حلقه do ... while ، دقيقا همانند حلقه while است ، با اين تفاوت که شرط حلقه do ... while در انتهای حلقه تعريف و کنترل می شود . به عبارت ديگر در اين حلقه ابتدا يکبار دستورات حلقه اجرا شده و در آخر شرط حلقه برای اجرای مجدد ، کنترل می شود که در صورت درست بودن يکبار ديگر دستورات آن خواهد شد .
مزيت اين حلقه نسبت به حلقه while اين است که ، در حلقه while در صورت عدم برقراری شرط حلقه دستورات آن هيچگاه اجرا نخواه شد . اما در حلقه do ... while ، حتی در صورت غلط بودن و عدم برقراری شرط حلقه ، دستورات آن حداقل يکبار اجرا خواهد شد .
شکل کلی تعريف يک حلقه do ... while به صورت زير است :
do
{
دستورات حلقه
}
while ( شرط يا شروط حلقه )
مثال : مثال اول قسمت آموزش حلقه while را در اينجا با حلقه do ... while باز نويسی کرده ايم . در اين حلقه از متغير n به عنوان متغير شمارنده و کنترل کننده حلقه استفاده شده است . اجرای حلقه تا زمانی که شرط آن درست است ، ادامه دارد :
< script type="text/javascript" >
var n = 1 ; تعريف و مقدار دهی متغير کنترلی حلقه
do
{
document.write ("Line number is " + n + "<br />") ;
n++ ; گام افزايشی متغير کنترلی حلقه
}
while ( n <= 5 )
< /script >
خروجی:
Line number is 1
Line number is 2
Line number is 3
Line number is 4
Line number is 5
مثال : در مثال زير يک حلقه do ... while تعريف شده که شرط اجرای دستورات آن کوچکتر بودن متغير c از 5 است . اما قبل از حلقه متغير c با مقدار 8 مقدار دهی شده است . می بينيم که با وجود اشتباه بودن و عدم برقراری شرط حلقه دستورات آن حداقل يکبار اجرا شده و خروجی توليد کرده است ، ولی سری دوم اجرای حلقه به دليل عدم برقراری شرط آن اجرا نشده است :
< script type="text/javascript" >
var c = 8 ; تعريف و مقدار دهی متغير کنترلی حلقه
do
{
document.write ("Line number is " + c + "<br />") ;
c++ ;
}
while ( c <= 5 )
< /script >
خروجی :
Line number is 8