[자바스크립트/알고리즘] 프로그래머스-이상한 문자 만들기
728x90

문제

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.

 

제한 사항

  • 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
  • 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.

입력: try hello world

=> 출력: TrY HeLlO WoRlD

 

[나의 풀이]

function solution(s) {
    return s.split(" ").map(word=>{
        let result = '';
        for(let i = 0; i<word.length; i++){
            if(i%2 === 1) result += word[i].toLowerCase();
            else result += word[i].toUpperCase();
        }
        return result;
    }).join(" ");
}

 

입력문을 띄어쓰기(" ")로 나눈뒤, map()을 활용하여 각 단어 안의 알파벳을 조건에 맞게 검사한다.

320x100