使用 JavaScript 根据每个单词中的数字对单词字符串进行排序


问题

我们要求编写一个 JavaScript 函数,它接收一个表示句子的字符串。我们的函数应该对该句子进行排序。

句子字符串中的每个单词都包含一个整数。我们的函数应该按从小到大的顺序将包含最小整数的单词放在前面,对字符串进行排序。

示例

以下是代码 -

 在线演示

const str = "is2 Thi1s T4est 3a";
const sortByNumber = (str = '') => {
   const findNumber = (s = '') => s
      .split('')
      .reduce((acc, val) => +val ? +val : acc, 0);
   const arr = str.split(' ');
   const sorter = (a, b) => {
      return findNumber(a) - findNumber(b);
   };
   arr.sort(sorter);
   return arr.join(' ');
};
console.log(sortByNumber(str));

输出

Thi1s is2 3a T4est

更新于: 20-04-2021

557 次浏览

开始你的 事业

通过完成课程并获得认证

开始
广告