دستورهای تکراری ECMAScript

دستور تکرار یا دستورهای تکراری، یک مجموعه از دستورات را که باید تکرار شوند، بیان می‌کند، تا زمانی که برخی از شرایط برآورده شوند.

تکرار معمولاً برای تکرار مقادیر آرایه‌ها (به همین دلیل نامیده شده) یا انجام وظایف حسابداری تکراری استفاده می‌شود.

این بخش به شما معرفی می‌کند که ECMAScript چهار نوع دستور تکرار ارائه می‌دهد.

عبارت do-while

عبارت do-while یک تکرار پس‌آزمایش است، یعنی شرط خروج پس از اجرای کد درون تکرار محاسبه می‌شود. این بدان معناست که حداقل یک بار بدنه تکرار قبل از محاسبه عبارت اجرا می‌شود.

آموزش ساختار عبارت for به صورت زیر است:

do {statement} while (expression);

مثال:

var i = 0;
do {i += 2;} while (i < 10);

عبارت while

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

آموزش ساختار عبارت for به صورت زیر است:

while (expression) statement

مثال:

var i = 0;
while (i < 10) {
  i += 2;
}

عبارت for

عبارت for یک تکرار پیش‌آزمایش است و می‌توان متغیر را در ابتدای تکرار�始化 کرد و کدی که پس از تکرار باید اجرا شود را تعریف کرد.

آموزش ساختار عبارت for به صورت زیر است:

for (initialization; expression; post-loop-expression) statement

توجه داشته باشید:post-loop-expression پس از آن نمی‌توان نقطه ویرایش نوشت، در غیر این صورت اجرا نمی‌شود.

مثال:

iCount = 6;
for (var i = 0; i < iCount; i++) {
  alert(i);
}

این کد یک متغیر با نام i و مقدار اولیه 0 را تعریف می‌کند. فقط زمانی که مقدار عبارت شرطی (i < iCount) درست باشد، به تکرار ورود می‌کند، بنابراین ممکن است بدنه تکرار هیچ‌گاه اجرا نشود. اگر بدنه تکرار اجرا شد، عبارت پس از تکرار اجرا می‌شود و متغیر i به روزرسانی می‌شود.

عبارت for-in

عبارت for یک عبارت تکرار کردن دقیق است که برای برشمردن ویژگی‌های یک شیء استفاده می‌شود.

آموزش ساختار عبارت for به صورت زیر است:

for (property in expression) statement

مثال:

for (sProp in window) {
  alert(sProp);
}

در اینجا، عبارت for-in برای نمایش تمام ویژگی‌های شیء window استفاده می‌شود.

PropertyIsEnumerable() که در بحث قبلی مورد بحث قرار گرفته است، روشی خاص از ECMAScript است که برای نشان دادن اینکه یک ویژگی می‌تواند از طریق عبارت for-in دسترسی پیدا کند یا خیر، استفاده می‌شود.