ধরুন আমাদের কাছে নিম্নলিখিত অ্যারে অবজেক্ট আছে −
const arr = [ { 'name' : 'd', 'index' : 3 }, { 'name' : 'c', 'index' : 2 }, { 'name' : 'a', 'index' : 0 }, { 'name' : 'b', 'index' : 1 } ];
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এইরকম একটি অ্যারে নেয়৷
ফাংশনটি অবজেক্টের সূচক সম্পত্তি অনুসারে এই অ্যারেটিকে ক্রমবর্ধমান ক্রমে সাজাতে হবে।
তারপর ফাংশনটি সাজানো অ্যারেটিকে স্ট্রিংগুলির একটি অ্যারেতে ম্যাপ করতে হবে যেখানে প্রতিটি স্ট্রিংটি বস্তুর সংশ্লিষ্ট নামের বৈশিষ্ট্যের মান।
অতএব, উপরের অ্যারের জন্য, চূড়ান্ত আউটপুট −
এর মত হওয়া উচিতconst output = ["a", "b", "c", "d"];
উদাহরণ
এর জন্য কোড হবে −
const arr = [ { 'name' : 'd', 'index' : 3 }, { 'name' : 'c', 'index' : 2 }, { 'name' : 'a', 'index' : 0 }, { 'name' : 'b', 'index' : 1 } ]; const sortAndMap = (arr = []) => { const copy = arr.slice(); const sorter = (a, b) => { return a['index'] - b['index']; }; copy.sort(sorter); const res = copy.map(({name, index}) => { return name; }); return res; }; console.log(sortAndMap(arr));
আউটপুট
এবং কনসোলে আউটপুট হবে −
[ 'a', 'b', 'c', 'd' ]