[프로그래머스] JadenCase 문자열 만들기

2023. 1. 10. 17:06기록/Programmers

    목차

문제 링크

https://school.programmers.co.kr/learn/courses/30/lessons/12951

 

프로그래머스

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

programmers.co.kr


나의 문제 풀이

function solution(s) {
  return s
    .split(' ')
    .map((str) => (str ? str[0].toUpperCase() + str.substring(1).toLowerCase() : ''))
    .join(' ');
}
  • 주어진 문자열을 공백으로 구분하여 쪼갬, 해당 요소들을 가진 배열을 생성함
  • 배열의 요소들을 하나씩 꺼내어 반환된 값으로 새로운 배열을 생성함
    • 요소가 비어있지 않을 경우
      • 요소의 첫 번째 문자를 대문자로 바꿈
      • 요소의 두 번째 문자부터 끝까지 자르고 소문자로 바꿈
      • 두 문자를 + 연산자로 이어주어 반환함
    • 요소가 비어있는 경우 '' 를 반환함
      • 주어진 문자열 s에 공백이 연속으로 있을 경우임
      • 예) 'A  B'.split(' ') ==> ['A', '', 'B']
  • 해당 배열의 요소를 공백으로 구분해 문자열로 만들어 반환함

다른 사람의 문제 풀이

function solution(s) {
    var answer = '';
    for (let i = 0; i < s.length; i++) {
      if (i === 0 || s[i-1] === " ") {
        answer += s[i].toUpperCase();
      } else {
        answer += s[i].toLowerCase();
      }
    }
    return answer;
}