আমাদের এমন একটি ফাংশন লিখতে হবে যা একটি অ্যারে নেয় এবং একটি নতুন অ্যারে প্রদান করে যেটির থেকে সমস্ত ডুপ্লিকেট মানগুলি সরানো থাকে৷
মূল অ্যারেতে একাধিকবার উপস্থিত হওয়া মানগুলি নতুন অ্যারেতে একবারের জন্যও উপস্থিত হওয়া উচিত নয়৷
উদাহরণস্বরূপ, যদি ইনপুট হয় −
const arr =[23,545,43,232,32,43,23,43];
আউটপুট −
হওয়া উচিতconst আউটপুট =[545, 232, 32];
পার্থক্য বোঝা -
-
Array.prototype.indexOf() → এটি বিদ্যমান থাকলে সার্চ করা স্ট্রিং এর প্রথম ঘটনার সূচী প্রদান করে, অন্যথায় -1।
-
Array.prototype.lastIndexOf() → এটি সার্চ করা স্ট্রিং এর শেষ ঘটনার সূচী প্রদান করে যদি এটি বিদ্যমান থাকে, অন্যথায় -1।
উভয় পদ্ধতিই বাম থেকে ডানে শুরু হয়৷
উভয় পদ্ধতি 0 থেকে শুরু হয় যদি দ্বিতীয় আর্গুমেন্ট অনির্ধারিত হয়, অন্যটি দ্বিতীয় আর্গুমেন্ট থেকে শুরু হয় যদি এটি একটি সংখ্যা হয়।
সুতরাং এখানে গুরুত্বপূর্ণ বিষয় হল, যদি একটি অ্যারেতে, indexOf() এবং lastIndexOf() পদ্ধতি একই সূচকে নির্দেশ করে, আমরা নিশ্চিত করতে পারি যে এটি শুধুমাত্র একবারই বিদ্যমান, তাই আমরা আমাদের কোডে এই অনুসন্ধানটি ব্যবহার করব।
ফাংশনের জন্য সম্পূর্ণ কোড হবে −
উদাহরণ
const arr =[23,545,43,232,32,43,23,43];const deleteDuplicate =(arr) => { const output =arr.filter((item, index, array) => { return array.indexOf (আইটেম) ===array.lastIndexOf(item); }) রিটার্ন আউটপুট;};console.log(deleteDuplicate(arr));
আউটপুট
কনসোলে আউটপুট হবে −
<প্রে>[ 545, 232, 32 ]