우리는 각각 다음과 같은 하나 이상의 숫자를 포함하는 문자열 배열을 가지고 있습니다 -
const arr = ['di5aster', 'ca1amity', 'cod3', 'ho2me3', 'ca11ing'];
이 배열을 문자열에 있는 숫자의 오름차순으로 정렬하는 정렬 함수를 작성해야 합니다. 올바른 순서는 -
입니다.const output = [ 'ca1amity', 'cod3', 'di5aster', 'ca11ing', 'ho2me3' ];
따라서 이 문제에 대한 코드를 작성해 보겠습니다 -
예
const arr = ['di5aster', 'ca1amity', 'cod3', 'ho2me3', 'ca11ing']; const filterNumber = str => { return +str .split("") .filter(el => el.charCodeAt() >= 48 && el.charCodeAt() <= 57) .join(""); }; const sorter = (a, b) => { return filterNumber(a) - filterNumber(b); }; arr.sort(sorter); console.log(arr);
출력
콘솔의 출력은 -
[ 'ca1amity', 'cod3', 'di5aster', 'ca11ing', 'ho2me3' ]