مقدمه

قدرت واقعی آرایه‌ها در جاوااسکریپت، به متدهای بسیار متنوع و قدرتمند آن‌هاست. این متدها به شما کمک می‌کنند داده‌های لیستی را به راحتی تغییر دهید، جستجو کنید، فیلتر کنید و عملیات‌های پیچیده را فقط با چند خط کد انجام دهید. در این درس با مهم‌ترین متدهای آرایه، کاربرد و تفاوت هرکدام به صورت مفصل آشنا می‌شوید.

افزودن و حذف عناصر از آرایه

برای مدیریت آرایه‌ها، افزودن و حذف عناصر از آن‌ها یکی از مهم‌ترین عملیات‌هاست. جاوااسکریپت متدهای متنوعی برای این کار ارائه می‌دهد که هرکدام کاربرد خاص خود را دارند. در ادامه به بررسی رایج‌ترین این متدها می‌پردازیم.

متدهای push و pop

برای افزودن عنصر به انتهای آرایه، از متد push و برای حذف آخرین عنصر، از pop استفاده کنید. این دو متد رایج‌ترین روش‌ها برای کار با انتهای آرایه هستند.

این متدها مستقیماً آرایه را تغییر می‌دهند و تعداد عناصر آرایه را افزایش یا کاهش می‌دهند.

Copy Icon JAVASCRIPT
let arr = [1, 2, 3];
arr.push(4);
console.log(arr); // [1, 2, 3, 4]
arr.pop();
console.log(arr); // [1, 2, 3]

متدهای unshift و shift

برای اضافه کردن عنصر به ابتدای آرایه از unshift و برای حذف اولین عنصر از shift استفاده می‌شود. این متدها می‌توانند آرایه را مانند یک صف مدیریت کنند.

توجه کنید که این متدها نیز مستقیماً آرایه اصلی را تغییر می‌دهند و معمولاً در پیاده‌سازی صف‌ها و الگوریتم‌های خاص بسیار کاربرد دارند.

Copy Icon JAVASCRIPT
let arr = [10, 20];
arr.unshift(5);
console.log(arr); // [5, 10, 20]
arr.shift();
console.log(arr); // [10, 20]

پیمایش و جستجو در آرایه‌ها

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

متد forEach

متد forEach یک تابع را برای هر عنصر آرایه اجرا می‌کند. این متد بسیار برای انجام عملیات روی تک‌تک عناصر آرایه کاربردی است و آرایه را تغییر نمی‌دهد.

معمولاً forEach را برای نمایش، جمع زدن یا هر عملیات جانبی روی عناصر استفاده می‌کنند.

Copy Icon JAVASCRIPT
arr.forEach(function(item, index) {
  console.log(index, item);
});

متدهای find و findIndex

برای یافتن اولین عنصر مطابق با شرط دلخواه، از find و برای یافتن ایندکس همان عنصر از findIndex استفاده کنید.

این متدها برای جستجوی داده در آرایه‌های شیءمحور و کاربردهای عملیاتی بسیار مفید هستند.

Copy Icon JAVASCRIPT
let users = [
  { id: 1, name: "Ali" },
  { id: 2, name: "Sara" }
];
let user = users.find(function(item) {
  return item.id === 2;
});
console.log(user.name); // "Sara"

تغییر، فیلتر و مرتب‌سازی آرایه‌ها

برای تغییر، فیلتر و مرتب‌سازی آرایه‌ها، جاوااسکریپت متدهای بسیار قدرتمندی ارائه می‌دهد که امکان انجام عملیات پیچیده را به سادگی فراهم می‌کنند. در این بخش به بررسی این متدها و کاربردهای آن‌ها می‌پردازیم.

متدهای filter و map

متد filter یک آرایه جدید با عناصر مطابق شرط تولید می‌کند و متد map نیز مقدار همه عناصر را به آرایه جدید تبدیل می‌کند. این متدها هسته‌ی برنامه‌نویسی تابعی با آرایه‌ها را تشکیل می‌دهند.

این روش‌ها برای فیلتر کردن داده‌ها، تبدیل داده‌ها و ساخت لیست‌های جدید از داده‌های اصلی بسیار پرکاربرد هستند.

Copy Icon JAVASCRIPT
let nums = [1, 2, 3, 4];
let even = nums.filter(n => n % 2 === 0);
let squares = nums.map(n => n * n);

متدهای sort و reverse

با متد sort آرایه را براساس یک تابع مقایسه مرتب و با متد reverse ترتیب آن را برعکس می‌کنید. sort می‌تواند هم برای اعداد و هم رشته‌ها استفاده شود.

اگر تابع مقایسه به sort ندهید، عناصر به صورت رشته‌ای مرتب می‌شوند که برای اعداد درست نیست. بهتر است همیشه یک تابع مقایسه مناسب به آن بدهید.

Copy Icon JAVASCRIPT
nums.sort((a, b) => b - a); // مرتب‌سازی نزولی
nums.reverse(); // معکوس کردن ترتیب

متدهای کمکی مهم: slice، splice، concat و join

این متدها برای کار با آرایه‌ها و مدیریت داده‌ها بسیار مفید هستند. slice برای گرفتن زیرآرایه، splice برای حذف یا اضافه کردن عناصر، concat برای ترکیب چند آرایه و join برای تبدیل آرایه به رشته با جداکننده مشخص استفاده می‌شود.

متدهای slice و splice

متد slice برای گرفتن بخشی از آرایه بدون تغییر آرایه اصلی است و متد splice برای حذف یا اضافه کردن عنصر به آرایه و تغییر آرایه اصلی به کار می‌رود.

Copy Icon JAVASCRIPT
let arr = [1, 2, 3, 4];
let part = arr.slice(1, 3); // [2, 3]
arr.splice(1, 2); // حذف دو عنصر از ایندکس ۱

متدهای concat و join

متد concat چند آرایه را با هم ترکیب می‌کند و متد join عناصر آرایه را با یک جداکننده به صورت یک رشته درمی‌آورد. این متدها برای ساخت آرایه جدید یا تبدیل آرایه به رشته بسیار مفید هستند.

Copy Icon JAVASCRIPT
let arr1 = [1, 2];
let arr2 = [3, 4];
let all = arr1.concat(arr2); // [1,2,3,4]
console.log(all.join("-")); // "1-2-3-4"

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