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

.concat()
متد concat() برای ترکیب دو یا چند آرایه استفاده میشود. این متد یک آرایه جدید برمیگرداند و آرایه اصلی را دستکاری نمیکند.
const fruits = [ "سیب", "موز" ] const more = [ "گیلاس" ] const combined = fruits.concat( more ) // [ "سیب", "موز", "گیلاس" ] // هر دو آرایه با هم ادغام شدهاند ولی fruits تغییری نکرده.
.unshift()
متد unshift() یک یا چند مقدار را در ابتدای آرایه اضافه میکند و طول آرایه را برمیگرداند. برخلاف concat، آرایه اصلی تغییر میکند.
const colors = [ "قرمز", "سبز" ] colors.unshift( "آبی" ) // [ "آبی", "قرمز", "سبز" ] // عنصر جدید در ابتدای آرایه افزوده شد.
.shift()
متد shift() اولین عنصر آرایه را حذف کرده و همان مقدار حذفشده را برمیگرداند.
const items = [ "A", "B", "C" ] const first = items.shift() // first = "A" // items = [ "B", "C" ] // عنصر اول حذف و مقدار آن بازگردانده شد.
.with()
with نسخهای جدید از آرایه میسازد و بدون تغییر آرایه اصلی، یک مقدار خاص را جایگزین مورد دلخواه میکند.
const arr = [ "x", "y", "z" ] const changed = arr.with( 1, "w" ) // [ "x", "w", "z" ] // مقدار دوم بدون تغییر اصل آرایه، به "w" تبدیل شد.
.reverse()
متد reverse() ترتیب عناصر آرایه را برعکس میکند و آرایه اصلی را نیز تغییر میدهد.
const nums = [ 1, 2, 3, 4 ] nums.reverse() // [ 4, 3, 2, 1 ] // ترتیب کامل عناصر وارونه شد.
.flat()
flat() آرایههای تو در تو را مسطح میکند و با یک سطح عمق پیشفرض (عمق ۱) برمیگرداند.
const nested = [ 1, [ 2, 3 ], [ 4, 5 ] ] const flatArr = nested.flat() // [ 1, 2, 3, 4, 5 ] // عناصر داخل آرایههای داخلی در یک سطح قرار گرفتند.
.filter()
filter عناصر آرایه را بر اساس شرط انتخابی شما فیلتر میکند و یک آرایه جدید برمیگرداند.
const numbers = [ 5, 10, 15, 20 ] const over10 = numbers.filter( n => n > 10 ) // [ 15, 20 ] // تنها مقادیر بزرگتر از 10 باقی ماندهاند.
.map()
متد map روی هر عنصر آرایه تابعی را اجرا میکند و سپس آرایهای جدید با نتایج آن تابع برگشت میدهد.
const nums = [ 1, 2, 3 ] const doubled = nums.map( n => n * 2 ) // [ 2, 4, 6 ] // هر عدد دو برابر شده و آرایه جدید ایجاد شد.
.splice()
splice میتواند برای حذف یا اضافه کردن عناصر در موقعیت خاصی از آرایه استفاده شود. این متد آرایه اصلی را تغییر میدهد.
const arr = [ "a", "b", "c", "d" ] arr.splice( 1, 2 ) // [ "a", "d" ] // از ایندکس 1 به بعد، دو عنصر حذف شد.
.slice()
متد slice برای گرفتن بخشی از آرایه کاربرد دارد و آرایهای جدید میسازد بدون تغییر آرایه اصلی.
const letters = [ "الف", "ب", "پ", "ت" ] const part = letters.slice( 0, 2 ) // [ "الف", "ب" ] // بخشی از ابتدای آرایه جدا شد و یک آرایهی جدید با آن ساخته شد.
.join()
join عناصر یک آرایه را با یک رشته دلخواه به هم وصل میکند و خروجی آن یک رشته است. عملکرد آن شبیه implode در php است.
const tech = [ "HTML", "CSS", "JS" ] const str = tech.join( " - " ) // "HTML - CSS - JS"
کار با آرایهها بدون شناخت متدهای اصلی آن در جاوااسکریپت مشکل است. یادگیری تفاوت میان متدهایی که آرایه اصلی را تغییر میدهند (مثل splice و reverse) و متدهایی که آرایه جدید میسازند (مثل map و slice)، اساس کدنویسی تمیز و حرفهای در جاوااسکریپت است.
