Vấn đề
Chúng ta cần viết một hàm JavaScript nhận vào một chuỗi đại diện cho một câu. Hàm phải sắp xếp câu này.
Mỗi từ trong chuỗi câu chứa một số nguyên. Hàm phải sắp xếp chuỗi sao cho từ chứa số nguyên nhỏ nhất đặt đầu tiên và tăng dần.
Ví dụ
Dưới đây là mã:
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));
Kết quả
Thi1s is2 3a T4est