JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고)
문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 길이 1 이상 200 이하인 문자열입니다.
s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다.
숫자는 단어의 첫 문자로만 나옵니다.
숫자로만 이루어진 단어는 없습니다.
공백문자가 연속해서 나올 수 있습니다.
s | return |
---|---|
"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 시킨다
}
function solution(s) {
return s.split(" ").map(v => v.charAt(0).toUpperCase() + v.substring(1).toLowerCase()).join(" ");
}
다른 사람도 풀이 방식이 유사했다.
어떻게 자르는지만 달랐는데 참고로
charAt() 함수는 문자열에서 특정 인덱스에 위치하는 유니코드 단일문자를 반환
하는 함수substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환
하는 함수이다.