ধরা যাক, আমাদের কাছে এই ধরনের বস্তুর একটি অ্যারে আছে -
উদাহরণ
const arr = [ {text:'use'}, {text: 'secur'}, {text: 'form'}, {text: 'user'}, {text: 'users'}, {text: 'form'}, {text: 'secur'}, {text: 'sec'}, {text: 'users'}, {text: 'secu'}, {text: 'secur'}, {text: 'for'}, {text: 'form'} ]
আমাদের কাজ হল একটি ফাংশন লেখা যা এই অ্যারে এবং একটি সংখ্যা n নেয় এবং ফাংশনটি n অবজেক্টের একটি অ্যারে ফেরত দেয় যার টেক্সট কী-এর জন্য দীর্ঘতম স্ট্রিং মান রয়েছে এবং সমস্ত বস্তুর পাঠ্য কী-এর জন্য একটি অনন্য মান থাকা উচিত। যদি n অনন্য বস্তুর অস্তিত্ব না থাকে, তাহলে আমাদের সমস্ত অনন্য বস্তু ফেরত দেওয়া উচিত।
অতএব, আসুন এই ফাংশনের জন্য কোড লিখি -
উদাহরণ
const arr = [ {text: 'use'}, {text: 'secur'}, {text: 'form'}, {text: 'user'}, {text: 'users'}, {text: 'form'}, {text: 'secur'}, {text: 'sec'}, {text: 'users'}, {text: 'secu'}, {text: 'secur'}, {text: 'for'}, {text: 'form'} ]; const sorter = (a, b) => { return b.text.length - a.text.length; } const longestUnique = (arr, num) => { const copy = arr.slice(); copy.sort(sorter); const map = new Map(); const uniqueCopy = copy.filter(el => { const exists = map.get(el.text); if(exists){ return false; }; map.set(el.text, 1); return true; }); return uniqueCopy.splice(0, num); } console.log(longestUnique(arr, 4)); console.log(longestUnique(arr, 12));ফেরত দিন
আউটপুট
কনসোলে আউটপুট হবে −
[ { text: 'secur' }, { text: 'users' }, { text: 'form' }, { text: 'user' } ] [ { text: 'secur' }, { text: 'users' }, { text: 'form' }, { text: 'user' }, { text: 'secu' }, { text: 'use' }, { text: 'sec' }, { text: 'for' } ]