✏️기록하는 즐거움
article thumbnail

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

|  제출

function solution(s) {
  let arr = s.split(" ");

  for (let i = 0; i < arr.length; i++) {
    arr[i] = arr[i]
      .split("")
      .map((item, index) =>
        index % 2 === 0 ? item.toUpperCase() : item.toLowerCase()
      )
      .join("");
  }

  return arr.join(" ");
}

 

|  풀이과정

문자열 전체가 아닌 단어별로 짝/홀수 인덱스를 판단해야한다.

따라서 공백을 기준으로 단어를 나눈 후, map 메서드를 사용해서 단어의 인덱스가 짝수면 대문자로, 홀수면 소문자로 변환한다.

 

|  개념

String.prototype.split()

  • String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눈다.

Array.prototype.map()

  • 배열 내의 모든 요소 각각에 대하여 주어진 함수를 호출한 결과를 모아 새로운 배열로 반환한다.

String.prototype.toUpperCase()

  • 문자열을 대문자로 변환한 값을 반환한다.
  • 원본 문자열에는 영향을 주지 않는다.

String.prototype.toLowerCase()

  • 문자열을 소문자로 변환한 값을 반환한다.
  • toUpperCase와 같이 원본 문자열에는 영향을 주지 않는다.

 

profile

✏️기록하는 즐거움

@nor_coding

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!