در جاوا اسکریپت، پیمایش (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، میتوانید به راحتی بر روی دادههای خود پیمایش کنید و به آنها دسترسی داشته باشید. دانستن این ابزارها و تفاوتهای آنها به شما کمک میکند تا کدهای کارآمدتری بنویسید و عملیاتهای پیچیدهتر را به سادگی انجام دهید.
نظری یافت نشد
جمعبندی، مرور مطالب و پروژه نهایی: ایجاد یک اپلیکیشن وب کامل با جاوا اسکریپت - راهنمای گام به گام
5م آبان 1403
مطالعه بیشتر
نصب Vue.js و ایجاد پروژه ساده: آموزش گامبهگام راهاندازی Vue
28م شهریور 1402
مطالعه بیشتر
آموزش mix-blend-mode و background-blend-mode در CSS: ترکیب رنگها و ایجاد افکتهای جذاب
12م آبان 1403
مطالعه بیشتر
آموزش تگهای پیوندی و اتصالی در HTML: ایجاد لینکهای داخلی و خارجی
29م مرداد 1402
مطالعه بیشتر
استفاده از overflow در CSS برای مدیریت محتوای اضافی: راهنمای کامل و کاربردی
11م آبان 1403
مطالعه بیشتر
آموزش CSS Blend Modes: ادغام رنگها و تصاویر برای طراحی وب جذاب
9م آبان 1403
مطالعه بیشتر
آموزش طراحی و استایلدهی جدولها در CSS: راهنمای ساده و کاربردی
10م شهریور 1402
مطالعه بیشتر
آموزش لیستها در CSS: طراحی و استایلدهی ساده برای لیستهای HTML
10م شهریور 1402
مطالعه بیشتر
آموزش CSS Transform و Transition: تبدیلها و ایجاد تغییرات ظاهری پویا
10م شهریور 1402
مطالعه بیشتر
آموزش استفاده از تگهای خاص HTML: تگهای کاربردی برای طراحی وبسایت
22م مرداد 1402
مطالعه بیشتر
کار با تصاویر SVG در CSS: کنترل استایل و استفاده از گرافیکهای مقیاسپذیر
16م آبان 1403
مطالعه بیشتر
آموزش تگهای متنی اولیه در HTML: استایلدهی و قالببندی متنها
18م مرداد 1402
مطالعه بیشتر
تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد