[프로그래머스 Lv1] 이상한 문자 만들기 - (Javascript)

eeeyooon·2023년 12월 22일
0

이상한 문자 만들기

문제 링크

📩 문제 설명

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

제한사항

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

입출력 예

sreturn
"try hello world""TrY HeLlO WoRlD"

제출 답안

const solution = (s) => {
    return s.split(" ")
        .map(v => v.split("")
            .map((alp, idx) => idx % 2 === 0
                ? alp.toUpperCase()
                : alp.toLowerCase())
            .join(""))
        .join(" ");
}

답안 설명

먼저 문자열 s를 띄어쓰기를 기준으로 각각 요소로 나눠 배열로 만들어주고, 그 배열을 map으로 돌렸다. 그럼 "try","hello","world"의 각각 요소가 리턴이 되는데 리턴이 될 때 그 요소를 또 배열로 만들어서 "t","r","y"와 같이 나누었고 그 상태로 map을 돌려 각각의 요소와 인덱스를 인자로 받아 인덱스가 짝수일 때는 요소를 대문자로, 홀수일 땐 소문자로 바꾸는 처리를 하였다. 그 다음 join을 통해 다시 문자열로 만들어주고 ("try") 가장 바깥 map이 끝났을 때도 join을 통해 배열을 다시 하나의 문자열로 바꾸어주었다.


0개의 댓글