در جاوااسکریپت از حلقه های تکرار while ، do..while و for برای تکرار دسته ای از دستورات استفاده می شود. در زیر این حلقه های تکرار را بررسی می کنیم
حلقه for
در اين حلقه، مجموعه کد مورد نظر به تعداد مشخص تکرار مي شود که در ابتداي حلقه تعداد دفعات اجراي کد بايد اعلام شود. بطور مثال مي خواهيم اعداد از 0 تا 10 در صفحه چاپ شوند:
<script language="javascript" type="text/javascript">
for ( i = 0; i <= 10; i++ )
{
document.write ( " Number " + i + "<br />")
}
</script>
حلقه while
در مواردي که مقدار انتهايي حلقه مشخص نيست مي توانيم از اين نوع استفاده کنيم چون کد مورد نظر تا جايي که نتيجه دلخواه بدست بيايد تکرار خواهد شد. مثال بالا را در مورد اين حلقه مي توانيم به اين صورت ذکر کنيم:
var i = 0
while (i <= 10)
{
document.write(" Number " + i + "<br />")
i++
}
کلمه while را مي توانيم ترجمه کنيم به ماداميکه ، ماداميکه شرط کوچکتر يا مساوي 10 بودن برقرار نيست حلقه را تکرار کن و يک واحد به آن اضافه کن تا بالاخره شرط ما درست دربيايد.
حلقه do…while
اين نوع حلقه برعکس حلقه while مي باشد. در اين حلقه، شرط در آخر بدنه حلقه بررسي مي شود. فرق اين حلقه با حلقه while در اينست که حداقل يکبار دستورات اجرا خواهند شد ولي در حلقه while ممکن بود در صورت برقرار بودن شرط در همان ابتدا ديگر دستورات اجرا نشوند. مثال:
var i=0
do
{
document.write(" Number " + i + "<br />")
i=i+1
}
while (i <= 10);
دستور break
هنگاميکه شما نياز به نوشتن حلقه هاي پيچيده تري داريد، بايد دقت کنيد که حلقه شما دچار حلقه بي نهايت يا همان حلقه نامتناهي نشود. به اين منظور مي توانيد از دستور break استفاده کنيد و يک شرطي هم براي آن در نظر بگيريد تا از حلقه هاي بي نهايت جلوگيري شود.
var i = 11
while (i >= 10)
{
document.write(" Number " + i + "<br />")
i++
if ( i == 21 ) break
}