JavaScript-এ অ্যারে থেকে এলিমেন্ট খুঁজে বের করার জন্য একাধিক মেথড রয়েছে। পরিস্থিতি অনুযায়ী সঠিক মেথড বেছে নিন।
১. indexOf() - সিম্পল মান খুঁজে বের করা
প্রথম মিলের ইনডেক্স রিটার্ন করে, না পেলে -1।
let people = ["Harry", "Martha", "John", "Sam"];
console.log(people.indexOf("John")); // 2
console.log(people.indexOf("Jim")); // -1
২. fromIndex প্যারামিটার - নির্দিষ্ট পজিশন থেকে সার্চ
let people = ["Harry", "Martha", "John", "Sam", "Martha"];
console.log(people.indexOf("Martha")); // 1 (প্রথম মেলা)
console.log(people.indexOf("Martha", 3)); // 4 (ইনডেক্স ৩ থেকে সার্চ)
৩. find() - অবজেক্ট বা কমপ্লেক্স শর্তে সার্চ
কলব্যাক ফাংশন দিয়ে প্রথম মিলের এলিমেন্ট রিটার্ন করে।
let people = [
{name: 'Agnes', age: 25},
{name: 'Richard', age: 21},
{name: 'Zoe', age: 35}
];
let person = people.find(p => p.name[0] === 'R');
console.log(person); // {name: 'Richard', age: 21}
৪. findIndex() - অবজেক্টের ইনডেক্স পাওয়া
find()-এর মতোই কিন্তু এলিমেন্টের বদলে ইনডেক্স রিটার্ন করে।
let index = people.findIndex(p => p.name[0] === 'R'); console.log(index); // 1
৫. includes() - শুধু আছে/নেই চেক (ES7)
console.log(people.includes("John")); // true (কেবল প্রিমিটিভ মানের জন্য)
কলব্যাক প্যারামিটার
find এবং findIndex-এর কলব্যাক তিনটি আর্গুমেন্ট পায়: (element, index, array)।
সারসংক্ষেপ
| মেথড | রিটার্ন | ব্যবহার |
|---|---|---|
| indexOf | ইনডেক্স (number) | প্রিমিটিভ মান, প্রথম মেলা |
| lastIndexOf | ইনডেক্স (number) | প্রিমিটিভ মান, শেষ মেলা |
| find | এলিমেন্ট | অবজেক্ট/কমপ্লেক্স শর্ত, প্রথম মেলা |
| findIndex | ইনডেক্স (number) | অবজেক্ট/কমপ্লেক্স শর্ত, প্রথম মেলার ইনডেক্স |
| includes | Boolean | শুধু উপস্থিতি চেক (ES7) |
| filter | অ্যারে | সব মিলে এলিমেন্ট |