আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম আর্গুমেন্ট হিসেবে লিটারেল মানগুলোর একটি অ্যারে এবং দ্বিতীয় আর্গুমেন্ট হিসেবে একটি স্ট্রিং নেবে।
আমাদের ফাংশনটি অ্যারেটিকে অক্ষরিক্রমে সর্ট করবে কিন্তু দ্বিতীয় আর্গুমেন্ট হিসেবে প্রদত্ত স্ট্রিংটি (যদি অ্যারেতে থাকে) প্রথম এলিমেন্ট হিসেবে রাখবে, তার টেক্স্ট যাই হোক না কেন।
উদাহরণ
কোডটি হবে -
const arr = ["Apple", "Orange", "Grapes", "Pineapple", "None", "Dates"];
const sortKeepingConstants = (arr = [], text = '') => {
const sorter = (a, b) => {
return (b === text) - (a === text) || a.localeCompare(b);
}
arr.sort(sorter);
};
sortKeepingConstants(arr, 'None');
console.log(arr);
আউটপুট
কনসোলে আউটপুট হবে -
[ 'None', 'Apple', 'Dates', 'Grapes', 'Orange', 'Pineapple' ]