对数组进行排序,并将特定元素作为JavaScript中的默认值

我们需要编写一个JavaScript函数,该函数将文本值的数组作为第一个参数,并将字符串作为第二个参数。

我们的函数应按字母顺序对数组进行排序,但无论提供的字符串是包含在文本中的第二个参数(如果数组中存在),都应将其作为第一个元素。

示例

为此的代码将是-

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' ]