حلقه ها در JavaScript
با کمک حلقه ها (loops) می توان یک بلوک کد را چندین بار اجرا کرد.
معمولا از حلقه برای اجرای یک بلوک کد، در همه المان های یک آرایه یا شیء استفاده می شود. برای درک بهتر به نمونه کد زیر توجه کنید.
const students = ["Ehsan", "Amir", "Reza", "Mobin", "Dorsa", "Mahsa"];
let str_students = '';
str_students += `${students[0]} <br>`; // Ehsan <br>
str_students += `${students[1]} <br>`; // Amir<br>
str_students += `${students[2]} <br>`; // Reza<br>
str_students += `${students[3]} <br>`; // Mobin<br>
str_students += `${students[4]} <br>`; // Dorsa<br>
str_students += `${students[5]} <br>`; // Mahsa<br>
در نمونه کد بالا تمام المان های آرایه را به صورت دستی داخل رشته str_students ریخته ایم.
در نمونه کد زیر با استفاده از حلقه for in کار بالا را انجام داده ایم.
const students = ["Ehsan", "Amir", "Reza", "Mobin", "Dorsa", "Mahsa"];
let str_students = '';
for(student of students) {
str_students += `${student} <br>`;
}
نکته: استفاده از حلقه باعث می شود کد شما مقیاس پذیرتر شود. اگر در نمونه کد اول تعداد شاگردان تغییر کند ما مجبور به تغییر کدها خود نیز هستیم. ولی در نمونه کد دوم اگر تعداد شاگردان تغییر کند نیازی به تغییر کد نداریم.
حلقه ها | توضیحات |
for | اجرای یک بلوک کد به تعداد دفعات دلخواه |
for in | اجرای یک بلوک کد روی یک آرایه یا شیء و برگرداندن ایندکس در هر اجرا |
for of | اجرای یک بلوک کد روی یک آرایه یا شیء و برگرداندن مقدار در هر اجرا |
while | اجرای یک بلوک کد بر اساس شرط |
do while | اجرای یک بلوک کد بر اساس شرط - حداقل یک بار اجرا می شود |
حلقه ی for in
با استفاده از for in می توان از طریق ویژگی های یک شیء حلقه ساخت.
نحوه ی کار for in :
for (key in object) {
// کدی که باید اجرا شود
}
در مثال زیر ویژگی های شیء که [1,2,3,4,5] تبدیل به حلقه شدند وبه ترتیب لیست شدند.
const numbers = [1, 2, 3, 4,5];
let txt = "";
for (let x in numbers) {
txt += numbers[x] + "<br>";
}
حلقه ی for of
for of می تواند از طریق مقادیر یک شیء تکرار پذیر حلقه بسازد.
نحوه ی استفاده :
for (variable of iterable) {
// کدی که باید اجرا شود
}
در مثال زیرحلقه ای از آرایه های ["blue", "red", "white"] ساخته شد.
const colors = ["blue", "red", "white"];
let text = "";
for (let x of colors) {
text += x + "<br>";
}
حلقه ی while
while تا زمانی که یک شرط از قبل مشخص شده درست باشد حلقه می سازد.
while (condition) {
// کدی که در صورت درست بودن شرط اجرا خواهد شد
}
در مثال زیر شرط این است که اعداد کوچک تر از 5 تا 2 اجرا شوند پس ما حلقه ای به صورت 2و3و4 داریم.
let text = "";
let i = 0;
while (i < 5) {
text += "<br>The number is " + i;
i++;
}