آرایه یکی از مورد استفاده ترین ساختمان داده های جاوا اسکریپته. آرایه یک آبجکته که مجموعه ای از مقادیر یک نوع داده رو ذخیره میکنه. بعنوان مثال، کامنت های یک پست بلاگ یا عکس های یک آلبوم میتونن در یک آرایه ذخیره بشن.
متدهای آرایه بسیاری وجود داره که میتونیم به کمک اونا داده ای اضافه کنیم، حذف کنیم یا دستکاری کنیم. در این مقاله تعدادی از متدهای رایج رو پوشش میدم.
let tea = ['breakfast', 'lemon', 'green']; let count = tea.push('peach'); console.log(tea); // ['breakfast', 'lemon', 'green', 'peach'] console.log(count); // 4 tea.push('black', 'strawberry', 'cranberry'); console.log(tea); // ['breakfast', 'lemon', 'green', 'peach', 'black', 'strawberry', 'cranberry']
let letters = ['a', 'b', 'c', 'd', 'e']; let count = letters.unshift('x', 'y', 'z'); console.log(letters); // ['x', 'y', 'z', 'a', 'b', 'c'] console.log(count); // 8
let letters = ['a', 'b', 'c', 'd', 'e']; let poppedItem = letters.pop(); console.log(letters); // ['a', 'b', 'c', 'd'] console.log(poppedItem); // 'e'
let letters = ['a', 'b', 'c', 'd', 'e']; let shiftedItem = letters.shift(); console.log(letters); // ['b', 'c', 'd', 'e'] console.log(shiftedItem); // 'a'
مثال اول: حذف 2 آیتم از اندیس 0
let food = ['salad', 'steak', 'pudding', 'carrot cake']; food.splice(0, 2); console.log(food); // ['pudding', 'carrot cake']
مثال دوم: حذف 0 آیتم از اندیس 1 و افزودن 2 آیتم جدید
let animals = ['koala', 'fish', 'tortoise', 'whale'] animals.splice(1, 0, 'snake', 'rabbit'); console.log(animals); // ['koala', 'snake', 'rabbit', 'fish', 'tortoise', 'whale']
مثال سوم: جایگزینی 2 آیتم از اندیس 0 با 2 آیتم جدید
let tea = ['earl grey', 'lemon', 'green']; tea.splice(0, 2, 'breakfast', 'peach'); console.log(tea); // ['breakfast', 'peach', 'green']
let food = ['steak', 'pasta', 'cake', 'pudding', 'salad', 'soup']; let copy = food.slice(); console.log(copy); // ['steak', 'pasta', 'cake', 'pudding', 'salad', 'soup'] let dessert = food.slice(2, 4); console.log(dessert); // ['cake', 'pudding'] let starter = food.slice(-2); console.log(starter); // ['salad', 'soup'] let sweets = food.slice(-4, -2); console.log(sweets); // ['cake', 'pudding']
let tea = ['breakfast', 'earl grey', 'green']; let juice = ['orange', 'pineapple', 'pear']; let drinks = tea.concat(juice); console.log(drinks); // ['breakfast', 'earl grey', 'green', 'orange', 'pineapple', 'pear']
let tea = ['breakfast', 'earl grey', 'green']; console.log(tea.includes('breakfast')); // true console.log(tea.includes('strawberry')); // false console.log(tea.includes('earl grey', 1)); // true console.log(tea.includes('earl grey', 2)); // false
در مثال اول، معیار جستجو اینه که دنبال عددی هستیم که از 3 بزرگتره. فانکشن جستجو عدد 4 رو برمیگردونه چون 4 اولین آیتمی هست که با این معیار همخونی داره.
در مثال دوم، معیار جستجو اینه که عدد باید از 1 کوچکتر باشه. فانکشن جستجو مقدار undefined برمیگردونه چون هیچ آیتمی با این معیار همخونی نداره.
let numbers = [1, 2, 3, 4, 5, 6]; let found = numbers.find(num => num > 3); console.log(found); // 4 found = numbers.find(num => num < 1); console.log(found); // undefined
در مثال اول، معیار جستجو اینه که دنبال عددی هستیم که از 3 بزرگتره. فانکشن جستجو عدد 1 رو برمیگردونه چون 1 اندیس اولین آیتمی هست که با این معیار همخونی داره.
در مثال دوم، معیار جستجو اینه که عدد باید از 2 کوچکتر باشه. فانکشن جستجو مقدار 1- برمیگردونه چون هیچ آیتمی با این معیار همخونی نداره.
let numbers = [2, 4, 6, 7, 9, 10]; let foundIndex = numbers.findIndex(num => num > 3); console.log(foundIndex); // 1 foundIndex = numbers.findIndex(num => num < 2); console.log(foundIndex); // -1
let juice = ['orange', 'pineapple', 'pear']; let index = juice.indexOf('orange'); console.log(index); // 0 index = juice.indexOf('orange', 1); console.log(index); // -1
let array = ['Y', 'P', 'P', 'A', 'H']; let reversed = array.reverse(); console.log(reversed); // ['H', 'A', 'P', 'P', 'Y']
از اینکه این مقاله رو مطالعه کردی ممنونم! این مقاله جامع و کامل نیست. هنوزم متدهایی هستن که در موردشون حرف نزدیم. اگه میخوای بیشتر مطالعه کنی، میتونی به اسناد MDN سر بزنی.