문장을 첫 번째이자 유일한 인수로 취하는 JavaScript 함수를 작성해야 합니다.
문장은 한정된 수의 공백으로 연결된 특수한 종류의 문자열입니다.
함수는 문장의 단어를 재배열하여 가장 작은 단어(문자가 가장 적은 단어)가 먼저 나타난 다음 더 큰 단어가 나오도록 해야 합니다.
예를 들어 -
입력 문자열이 -
인 경우const str = 'this is a string';
그러면 출력은 다음과 같아야 합니다. -
const output = 'a is this string';
예시
다음은 코드입니다 -
const str = 'this is a string'; const arrangeWords = (str = []) => { const data = str.toLowerCase().split(' ').map((val, i)=> { return { str: val, length: val.length, index: i } }) data.sort((a,b) => { if (a.length === b.length) return (a.index - b.index) return (a.length - b.length) }); let res = ''; let i = 0; while (i < data.length - 1) res += (data[i++].str + ' '); res += data[i].str; return (res) }; console.log(arrangeWords(str));
출력
다음은 콘솔 출력입니다 -
a is this string