Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 문자열 내 각 단어 반전하기

공백을 포함할 수 있는 문자열을 인수로 받아 처리하는 JavaScript 함수를 작성해야 합니다. 이 함수는 먼저 문자열을 공백을 기준으로 분리한 뒤, 각 단어의 글자 순서를 거꾸로 뒤집고, 다시 하나의 문자열로 합쳐서 반환해야 합니다.

예를 들어 입력 문자열이 다음과 같다면 −

const str = 'this is a word';

출력 결과는 다음과 같아야 합니다 −

const output = 'siht si a drow';

동작 원리

핵심 로직은 세 가지 배열 메서드를 조합하는 것입니다. split('')으로 단어를 개별 글자 배열로 나누고, reverse()로 배열 순서를 뒤집은 다음, join('')으로 다시 문자열로 합칩니다. 이 과정을 공백으로 분리된 모든 단어에 적용한 후 최종적으로 join(' ')으로 전체 문자열을 재구성합니다.

예제 코드

const str = 'this is a word';
const reverseWords = (str = '') => {
    const strArr = str.split(' ');
    for(let i = 0; i < strArr.length; i++){
        let el = strArr[i];
        strArr[i] = el
        .split('')
        .reverse()
        .join('');
    };
    return strArr.join(' ');
};
console.log(reverseWords(str));

출력 결과

콘솔에 출력되는 결과는 다음과 같습니다 −

siht si a drow

참고로 위 코드는 map() 메서드를 활용하면 더욱 간결하게 표현할 수도 있습니다. str.split(' ').map(word => word.split('').reverse().join('')).join(' ') 한 줄로 동일한 결과를 얻을 수 있어, 실무에서는 이러한 방식이 자주 사용됩니다.