استفاده از indexOfincludes

جستجوی آرایه‌ها در جاوااسکریپت با متدهای indexOf و includes

در توسعه وب، کار با آرایه‌ها یکی از رایج‌ترین عملیات‌هاست. دو متد پرکاربرد برای جستجو در آرایه‌ها، indexOf و includes هستند که هر کدام ویژگی‌های منحصر به فردی دارند.


متد indexOf

متد indexOf یکی از قدیمی‌ترین روش‌ها برای یافتن موقعیت یک عنصر در آرایه است:

  • اگر عنصر وجود داشته باشد، ایندکس آن را برمی‌گرداند
  • اگر عنصر وجود نداشته باشد، مقدار -1 را برمی‌گرداند
  • حساس به حروف بزرگ و کوچک (case-sensitive) است
مثال:
const fruits = ['سیب', 'موز', 'پرتقال'];
console.log(fruits.indexOf('موز')); // خروجی: 1
console.log(fruits.indexOf('انگور')); // خروجی: -1
ویژگی توضیح
پارامتر اول عنصری که می‌خواهید پیدا کنید
پارامتر دوم (اختیاری) ایندکس شروع جستجو

متد includes

متد includes در ES6 معرفی شد و برای بررسی وجود یک عنصر در آرایه استفاده می‌شود:

  1. اگر عنصر وجود داشته باشد، true برمی‌گرداند
  2. اگر عنصر وجود نداشته باشد، false برمی‌گرداند
  3. این متد نیز حساس به حروف بزرگ و کوچک است
متد includes برای خوانایی کد بهتر است وقتی فقط نیاز به بررسی وجود عنصر دارید و به ایندکس آن نیازی نیست.

مقایسه indexOf و includes

متد مقدار بازگشتی کاربرد اصلی
indexOf ایندکس یا -1 یافتن موقعیت عنصر
includes true/false بررسی وجود عنصر

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

در نهایت، انتخاب بین این دو متد بستگی به نیاز شما دارد. اگر نیاز به دانستن موقعیت دقیق عنصر دارید، از indexOf استفاده کنید. اگر فقط می‌خواهید بدانید عنصر در آرایه وجود دارد یا نه، includes گزینه بهینه‌تری است.