در جاوا اسکریپت، پیمایش (Iteration) بر روی اشیاء (Objects) و آرایهها (Arrays) یکی از مفاهیم اساسی است که برای دسترسی به دادهها و عملیات مختلف بر روی آنها به کار میرود. در این مقاله، به بررسی روشهای مختلف پیمایش بر روی اشیاء و آرایهها با استفاده از متدهای جاوا اسکریپت مانند Object.keys، Object.values، و حلقههای for...in و for...of میپردازیم.
آرایهها در جاوا اسکریپت مجموعهای از مقادیر هستند که با استفاده از اندیسها مرتب شدهاند. جاوا اسکریپت چندین روش برای پیمایش آرایهها فراهم کرده است که به شما امکان دسترسی و تغییر دادهها را میدهد.
حلقه for یکی از سادهترین و متداولترین روشها برای پیمایش آرایههاست. این حلقه به شما اجازه میدهد تا به هر عنصر آرایه بر اساس اندیس دسترسی داشته باشید.
const fruits = ['apple', 'banana', 'cherry'];
for (let i = 0; i < fruits.length; i++) {
console.log(fruits[i]);
}
// Output:
// apple
// banana
// cherry
متد forEach یکی از روشهای راحتتر و مدرنتر برای پیمایش آرایههاست. این متد به ازای هر عنصر آرایه، یک تابع کالبک (callback) اجرا میکند.
const fruits = ['apple', 'banana', 'cherry'];
fruits.forEach(fruit => {
console.log(fruit);
});
// Output:
// apple
// banana
// cherry
حلقه for...of برای پیمایش مستقیم مقادیر در آرایهها و سایر اشیاء قابل پیمایش (iterable objects) استفاده میشود. این حلقه مختصرتر از for و forEach است و به ویژه برای آرایهها بسیار مناسب است.
const fruits = ['apple', 'banana', 'cherry'];
for (const fruit of fruits) {
console.log(fruit);
}
// Output:
// apple
// banana
// cherry
اشیاء در جاوا اسکریپت مجموعهای از جفتهای کلید-مقدار هستند. برای پیمایش این کلیدها و مقادیر، جاوا اسکریپت روشهای مختلفی ارائه میدهد.
حلقه for...in به شما اجازه میدهد که بر روی کلیدهای یک شیء پیمایش کنید. این روش مناسبترین راه برای دسترسی به کلیدهای یک شیء است.
const person = {
name: 'Ali',
age: 30,
city: 'Tehran'
};
for (const key in person) {
console.log(`${key}: ${person[key]}`);
}
// Output:
// name: Ali
// age: 30
// city: Tehran
متد Object.keys یک آرایه از کلیدهای شیء را بازمیگرداند. این روش به شما اجازه میدهد تا با استفاده از یک حلقه، بر روی کلیدهای شیء پیمایش کنید.
const person = {
name: 'Ali',
age: 30,
city: 'Tehran'
};
const keys = Object.keys(person);
keys.forEach(key => {
console.log(`${key}: ${person[key]}`);
});
// Output:
// name: Ali
// age: 30
// city: Tehran
متد Object.values یک آرایه از مقادیر شیء را بازمیگرداند. این روش برای زمانی که تنها به مقادیر نیاز دارید بسیار مفید است.
const person = {
name: 'Ali',
age: 30,
city: 'Tehran'
};
const values = Object.values(person);
values.forEach(value => {
console.log(value);
});
// Output:
// Ali
// 30
// Tehran
متد Object.entries یک آرایه از جفتهای کلید-مقدار را به عنوان آرایههای جداگانه برمیگرداند. این روش زمانی مفید است که به هر دو کلید و مقدار نیاز دارید.
const person = {
name: 'Ali',
age: 30,
city: 'Tehran'
};
const entries = Object.entries(person);
entries.forEach(([key, value]) => {
console.log(`${key}: ${value}`);
});
// Output:
// name: Ali
// age: 30
// city: Tehran
درک تفاوت بین حلقههای for...in و for...of مهم است:
for...in: این حلقه برای پیمایش بر روی کلیدها یا خصوصیات یک شیء استفاده میشود. این روش تمام کلیدهای شیء را (حتی کلیدهایی که به ارث برده شدهاند) پیمایش میکند.
for...of: این حلقه برای پیمایش مقادیر در یک آرایه یا سایر اشیاء قابل پیمایش استفاده میشود. این روش به ویژه برای آرایهها و رشتهها مناسب است.
گاهی اوقات نیاز است که بر روی آرایهای از اشیاء یا شیئی که حاوی آرایه است پیمایش کنید. در اینجا چند مثال عملی آورده شده است:
const users = [
{ name: 'Ali', age: 30 },
{ name: 'Sara', age: 25 },
{ name: 'Reza', age: 35 }
];
for (const user of users) {
console.log(`Name: ${user.name}, Age: ${user.age}`);
}
// Output:
// Name: Ali, Age: 30
// Name: Sara, Age: 25
// Name: Reza, Age: 35
const company = {
name: 'Tech Co.',
employees: ['Ali', 'Sara', 'Reza'],
location: 'Tehran'
};
console.log('Company Name:', company.name);
console.log('Location:', company.location);
console.log('Employees:');
for (const employee of company.employees) {
console.log(employee);
}
// Output:
// Company Name: Tech Co.
// Location: Tehran
// Employees:
// Ali
// Sara
// Reza
پیمایش اشیاء و آرایهها در جاوا اسکریپت یکی از عملیاتهای رایج و اساسی است. با استفاده از روشهای مختلف مانند Object.keys، Object.values، for...in، و for...of، میتوانید به راحتی بر روی دادههای خود پیمایش کنید و به آنها دسترسی داشته باشید. دانستن این ابزارها و تفاوتهای آنها به شما کمک میکند تا کدهای کارآمدتری بنویسید و عملیاتهای پیچیدهتر را به سادگی انجام دهید.
نظری یافت نشد
کار با border و تنظیمات آن در CSS: مدیریت زوایای گرد با border-radius
9م آبان 1403
مطالعه بیشتر
آموزش کامل کنترل جریان و استفاده از if و else در جاوا اسکریپت: راهنمای جامع برای مبتدیان
2م بهمن 1402
مطالعه بیشتر
آموزش استفاده از cubic-bezier در CSS برای انیمیشنهای سفارشی و حرفهای
12م آبان 1403
مطالعه بیشتر
آموزش ایجاد تگهای صفحهبندی در HTML و CSS: طراحی و استایلدهی pagination
29م مرداد 1402
مطالعه بیشتر
عملگرها و عبارات محاسباتی در جاوا اسکریپت: نحوه استفاده و کاربردهای مختلف
28م شهریور 1402
مطالعه بیشتر
معرفی DOM و اصول آن در جاوا اسکریپت: راهنمای جامع برای مبتدیان
1م آبان 1403
مطالعه بیشتر
آموزش کار با رویدادهای فرم و اعتبارسنجی فرمها در جاوا اسکریپت: راهنمای جامع
3م آبان 1403
مطالعه بیشتر
آموزش تگهای متنی اولیه در HTML: استایلدهی و قالببندی متنها
18م مرداد 1402
مطالعه بیشتر
استفاده از Viewports و Viewport Units در CSS: طراحی واکنشگرا با vw، vh، vmin و vmax
16م آبان 1403
مطالعه بیشتر
آموزش mix-blend-mode و background-blend-mode در CSS: ترکیب رنگها و ایجاد افکتهای جذاب
12م آبان 1403
مطالعه بیشتر
آموزش توسعه و مدیریت پروژههای بزرگ در جاوا اسکریپت: آشنایی با ابزارها و فریمورکهای کاربردی
4م آبان 1403
مطالعه بیشتر
کار با فیلترهای CSS: آموزش استفاده از blur، brightness و contrast برای افکتهای تصویری جذاب
11م آبان 1403
مطالعه بیشتر
تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد