JavaScript findLast() মেথড: বাংলা টিউটোরিয়াল
findLast() হলো JavaScript-এর নতুন একটি মেথড যা ES2023 (ES14) থেকে এসেছে। এটি একটি অ্যারে-ভিত্তিক মেথড, যা একটি শর্ত অনুযায়ী শেষের দিক থেকে অনুসন্ধান করে প্রথম যে উপাদান মিলে যায় সেটি রিটার্ন করে। এটি Array.prototype-এর অংশ এবং functional programming-এর ধারণা অনুসরণ করে।
সিনট্যাক্স:
array.findLast(callback(element, index, array), thisArg)- callback: একটি ফাংশন যা প্রত্যেক উপাদানের উপর চালানো হয়
- thisArg (ঐচ্ছিক): callback ফাংশনের জন্য this এর মান নির্ধারণ করে
উদাহরণ ১: সাধারণ findLast() ব্যবহার
<script>
const numbers = [5, 12, 8, 130, 44];
const found = numbers.findLast((element) => element > 10);
console.log(found); // আউটপুট: 130
</script>
এই ক্ষেত্রে 130 হলো শেষ উপাদান যেটি 10 এর চেয়ে বড় এবং প্রথমে খুঁজে পাওয়া যায় শেষ দিক থেকে।
উদাহরণ ২: অবজেক্ট এরেযে ব্যবহার
<script>
const users = [
{ name: "Ali", age: 25 },
{ name: "Mira", age: 30 },
{ name: "Rafiq", age: 40 }
];
const lastUserOver30 = users.findLast(user => user.age > 30);
console.log(lastUserOver30);
// আউটপুট: { name: "Rafiq", age: 40 }
</script>
এখানে findLast() শেষের দিক থেকে দেখে যে ইউজারটির বয়স ৩০-এর বেশি সে হল “Rafiq”।
findLast() এর সাথে find() এর পার্থক্য
| মেথড | অনুসন্ধানের দিক | ফলাফল |
|---|---|---|
| find() | শুরু থেকে শেষ | প্রথম মিলে যাওয়া উপাদান |
| findLast() | শেষ থেকে শুরু | শেষের দিক থেকে প্রথম মিলে যাওয়া উপাদান |
findLast() যদি কিছু না পায়
<script>
const nums = [2, 4, 6];
const result = nums.findLast(n => n > 10);
console.log(result); // আউটপুট: undefined
</script>
কোনো উপাদান যদি শর্ত পূরণ না করে, তাহলে undefined রিটার্ন হয়।
টিপস:
- findLast() ES2023 থেকে শুরু হয়েছে। সব ব্রাউজারে এটি সাপোর্ট নাও করতে পারে।
- এটি immutability বজায় রাখে — অর্থাৎ মূল array পরিবর্তন করে না।
- callback ফাংশনের মাধ্যমে কাস্টম লজিক সহজেই যোগ করা যায়।
- findLastIndex() মেথডও আছে যা index রিটার্ন করে।
পলিফিল বা অল্টারনেটিভ (সাপোর্ট না থাকলে):
const findLastAlt = (arr, callback) => {
for (let i = arr.length - 1; i >= 0; i--) {
if (callback(arr[i], i, arr)) return arr[i];
}
return undefined;
};
<script>
const altResult = findLastAlt([1, 2, 3, 4], n => n > 2);
console.log(altResult); // আউটপুট: 4
</script>
উপসংহার:
findLast() হলো আধুনিক JavaScript প্রোগ্রামিং-এর একটি দরকারি টুল যা আপনাকে অ্যারের শেষ দিক থেকে তথ্য খোঁজার ক্ষমতা দেয়। এটি আপনার কোডকে করে আরও সংক্ষিপ্ত, পরিষ্কার ও কার্যকর। তবে, ব্রাউজার কম্প্যাটিবিলিটি যাচাই করা জরুরি।