انواع متد های جستجو آرایه در JS

هر نوع داده (data type) دارای متدها و ویژگی های مخصوص به خود است. در این بخش متدهای جستجو آرایه را بررسی می کنیم.

array.indexOf() ایندکس اولین وقوع جستجو array.lastIndexOf() ایندکس آخرین وقوع جستجو array.includes() بولین امکان وقوع جستجو array.find() مقدار اولین وقوع به صورت تابع array.findIndex() ایندکس اولین وقوع به صورت تابع array.findLast() مقدار آخرین وقوع به صورت تابع array.findLastIndex() ایندکس آخرین وقوع به صورت تابع

متد indexOf() آرایه در JS

متد ()indexOf، یک المان را در آرایه جستجو می کند و ایندکس اولین وقوع را برمی گرداند.

const persons = ["Ehsan", "Amir", "Reza", "Mobin", "Reza", "Mona"];
persons.indexOf("Reza");

نکته: متد indexOf در صورت پیدا نکردن نتیجه مقدار -1 برمی گرداند.

متد lastIndexOf() آرایه در JS

متد ()lastIndexOf، یک المان را در آرایه جستجو می کند و ایندکس آخرین وقوع را برمی گرداند.

const persons = ["Ehsan", "Amir", "Reza", "Mobin", "Reza", "Mona"];
persons.lastIndexOf("Reza");

نکته: متد lastIndexOf در صورت پیدا نکردن نتیجه مقدار -1 برمی گرداند.

متد includes() آرایه در JS

متد includes()، یک آرایه را جستجو و یک بولین را بر می گرداند. اگر آرایه حاوی کلمه مشخص شده باشد، true و در غیر این صورت false را بر می گرداند.

این متد دو پارامتر دریافت می کند.

  1. پارامتر اول مقداری که باید جستجو شود را مشخص می کند. (اجباری)
  2. پارامتر دوم ایندکس نقطه ای که جستجو باید از آن شروع شود، را مشخص می کند. (اختیاری)

نکته: مقدار برگشتی متد includes، یک بولین است.

const persons = ["Ehsan", "Amir", "Reza", "Mobin"];
person.includes("Mobin");
const persons = ["Ehsan", "Amir", "Reza", "Mobin"];
persons.includes("Amir", 0);
const persons = ["Ehsan", "Amir", "Reza", "Mobin"];
persons.includes("Amir", 2);

نکته: متد includes، حساس به حروف بزرگ و کوچک است.

متد find() در JS

متد ()find، یک شرط را روی تک تک المان های آرایه چک می کند و با پیدا کردن اولین رخداد شرط، مقدار را بر میگرداند.

const numbers = [4, 9, 16, 25, 29];
let founded = numbers.find(function (value, index, array) {
    return value > 18;
});

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

نکته: به محض یافتن اولین رخداد جستجو پایان می یابد و بقیه مقادیر آرایه چک نمی شود.

نکته: مقدار تابع حتما باید return شود. در غیر اینصورت نتیجه undefined می شود.

نکته: در صورت پیدا نکردن رخداد شرط، نتیجه undefined می شود. 

متد findIndex() در JS

متد ()findIndex، یک شرط را روی تک تک المان های آرایه چک می کند و با پیدا کردن اولین رخداد شرط، ایندکس را بر میگرداند.

const numbers = [4, 9, 16, 25, 29];
let founded = numbers.findIndex(function (value, index, array) {
    return value > 18;
});

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

نکته: به محض یافتن اولین رخداد جستجو پایان می یابد و بقیه مقادیر آرایه چک نمی شود.

نکته: مقدار تابع حتما باید return شود. در غیر اینصورت نتیجه undefined می شود.

نکته: در صورت پیدا نکردن رخداد شرط، نتیجه undefined می شود. 

متد findLast() در JS

متد ()findLast، یک شرط را روی تک تک المان های آرایه چک می کند و با پیدا کردن آخرین رخداد شرط، مقدار را بر میگرداند.

const numbers = [27, 28, 30, 40, 42, 35, 30];
let founded = numbers.findLast(function (value, index, array) {
    return value > 30;
});

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

نکته: به محض یافتن اولین رخداد جستجو پایان می یابد و بقیه مقادیر آرایه چک نمی شود.

نکته: مقدار تابع حتما باید return شود. در غیر اینصورت نتیجه undefined می شود.

نکته: در صورت پیدا نکردن رخداد شرط، نتیجه undefined می شود. 

متد findLastIndex() در JS

متد ()findLastIndex، یک شرط را روی تک تک المان های آرایه چک می کند و با پیدا کردن آخرین رخداد شرط، ایندکس را بر میگرداند.

const numbers = [27, 28, 30, 40, 42, 35, 30];
let founded = numbers.findLastIndex(function (value, index, array) {
    return value > 30;
});

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

نکته: به محض یافتن اولین رخداد جستجو پایان می یابد و بقیه مقادیر آرایه چک نمی شود.

نکته: مقدار تابع حتما باید return شود. در غیر اینصورت نتیجه undefined می شود.

نکته: در صورت پیدا نکردن رخداد شرط، نتیجه undefined می شود. 

خلاصه درس

در این فصل با متد های اعداد زیر آشنا شدیم:

  • ویژگی array.indexOf()
  • متد array.lastIndexOf()
  • متد array.includes()
  • متد array.find()
  • متد array.findIndex()
  • متد array.findLast()
  • متد array.findLastIndex()

توسعه دهندگان
احسان اسلامی