在JavaScript中对字符串内的字母进行排序

假设我们有一个用逗号分隔的单词字符串,如下所示:

const str = 'JAY, ROB';

我们需要编写一个包含一个这样的字符串的JavaScript函数。该函数可以从字符串中的单词创建一个新单词,其中前一个字母始终大于下一个字母(例如,A大于B)

例如,在上面的字符串中,我们要比较JAY的第一个字母和ROB的第一个字母。

由于与R相比J排在第一位,因此新单词的第一个字母为J。相比之下,第二个单词由于A在R之前成为第二个字母,因此第三个字母类似地成为R。

因此,最后一个字就是“ JAROBY”

请注意,在这个示例中,我们只用了两个单词组成的字符串,但是我们要求编写一个也可以使用两个以上单词的解决方案。

示例

为此的代码将是-

const str = `JAY,ROB,APPLE,AAKO`;

const specialSort = (str = '') => {

   let len = str.replace(/,/g, "").length;

   const sorter = (str, b) => {

      if(str === "" || str === null) return 1;

      if(b === "" || b === null) return −1;

      if(str === b) return 0;

      return str < b ? −1 : 1;

   };

   let res = "";

   let sorted = str.split(",").sort(sorter);

   while (res.length < len){

      res += sorted[0][0];

      sorted[0] = sorted[0].slice(1);

      sorted = sorted.sort(sorter);

   }

   return res;

};

console.log(specialSort(str));

输出结果

控制台中的输出将是-

AAAJAKOPPLEROBY

以上是 在JavaScript中对字符串内的字母进行排序 的全部内容, 来源链接: utcz.com/z/321612.html

回到顶部