16- آموزش کامل حلقهها و پیمایش در جاوااسکریپت: از For تا Map
در این آموزش به بررسی حلقهها (Loops) و روشهای پیمایش (Iteration) در جاوااسکریپت میپردازیم. یاد میگیریم چگونه با استفاده از for، while و do...while کدهای تکراری بنویسیم و چطور با متدهای مدرن مثل forEach و map روی آرایهها و اشیاء پیمایش کنیم.
حلقهها ابزاری هستند که به ما اجازه میدهند یک بلوک کد را تا زمانی که شرط خاصی برقرار است، تکرار کنیم. این کار برای پردازش دادهها در آرایهها یا تکرار عملیات تا رسیدن به یک عدد مشخص، حیاتی است.
۱. حلقههای عمومی (General Loops)
این حلقهها در اکثر زبانهای برنامهنویسی مشترک هستند.
الف) حلقه For
این حلقه زمانی استفاده میشود که میدانیم چند بار باید عملیات تکرار شود.
for (let i = 0; i < 10; i++) {
console.log(`Number ${i}`);
}
نکات مهم:
- Break: برای خروج کامل از حلقه استفاده میشود.
- Continue: برای پرش از یک تکرار خاص و رفتن به تکرار بعدی استفاده میشود.
ب) حلقه While
در این حلقه، متغیر شمارنده باید خارج از حلقه تعریف شود و افزایش آن داخل حلقه انجام شود.
let i = 0;
while (i < 10) {
console.log(`Number ${i}`);
i++;
}
ج) حلقه Do...While
تفاوت اصلی این حلقه با while این است که حداقل یک بار اجرا میشود، حتی اگر شرط در ابتدا برقرار نباشد.
let i = 0;
do {
console.log(`Number ${i}`);
i++;
} while (i < 10);
۲. پیمایش آرایهها (Array Iteration)
برای کار با آرایهها، روشهای مدرنتری وجود دارد که کدنویسی را تمیزتر میکنند.
استفاده از ForEach
بهترین روش برای پیمایش آرایهها استفاده از متد forEach است.
const cars = ['Ford', 'Chevy', 'Honda', 'Toyota'];
cars.forEach(function(car, index, array) {
console.log(`${index}: ${car}`);
});
استفاده از Map
متد map برای زمانی استفاده میشود که بخواهیم روی دادههای یک آرایه عملیاتی انجام دهیم و یک آرایه جدید دریافت کنیم.
const users = [
{id: 1, name: 'John'},
{id: 2, name: 'Sarah'},
{id: 3, name: 'Karen'}
];
const ids = users.map(function(user) {
return user.id;
});
console.log(ids); // خروجی: [1, 2, 3]
۳. پیمایش اشیاء (Iterating Objects)
برای پیمایش کلیدها و مقادیر داخل یک شیء، از حلقه for...in استفاده میکنیم.
const user = {
firstName: 'John',
lastName: 'Doe',
age: 30
};
for (let x in user) {
console.log(`${x}: ${user[x]}`);
}
در این حلقه، x نشاندهنده کلید (Key) و user[x] نشاندهنده مقدار (Value) است.
جمعبندی
در این آموزش آموختیم:
- تفاوت عملکرد
for،whileوdo...while. - نحوه استفاده از
breakوcontinueبرای مدیریت کنترل جریان. - برتری استفاده از متدهای آرایهای مثل
forEachوmapنسبت به حلقههای قدیمی. - نحوه دسترسی به کلید و مقدار در اشیاء با
for...in.