[JS] 프로그래머스 코딩테스트 연습 | JadenCase 문자열 만들기

zaman·2022년 9월 14일
0
post-thumbnail

1. 문제 설명

JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고)
문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.

2. 제한 조건

s는 길이 1 이상 200 이하인 문자열입니다.
s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다.
숫자는 단어의 첫 문자로만 나옵니다.
숫자로만 이루어진 단어는 없습니다.
공백문자가 연속해서 나올 수 있습니다.

3. 입출력 예

sreturn
"3people unFollowed me""3people Unfollowed Me"
"for the last week""For The Last Week"



문제풀이

function solution(s) {
  let arr = s.split(" "); // s를 공백 기준으로 나눈다

  return arr
    .map(
      (a) => a.slice(0, 1).toUpperCase() + a.slice(1, a.length).toLowerCase()
    ) // 첫 번째 문자는 대문자로, 나머지는 소문자로 바꾼다
    .join(" "); // 배열을 공백을 두고 join 시킨다
}
  1. 공백을 기준으로 s를 나눈다
  2. 첫번째 문자는 대문자, 그 외는 소문자로 변환한다
  3. 배열을 문자열로 합쳐준다

다른 사람 풀이

function solution(s) {
    return s.split(" ").map(v => v.charAt(0).toUpperCase() + v.substring(1).toLowerCase()).join(" ");
}

다른 사람도 풀이 방식이 유사했다.
어떻게 자르는지만 달랐는데 참고로

  • charAt()
    : charAt() 함수는 문자열에서 특정 인덱스에 위치하는 유니코드 단일문자를 반환하는 함수
  • substring()
    : substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환하는 함수이다.
profile
개발자로 성장하기 위한 아카이브 😎

0개의 댓글