알고리즘 연습 문제
문자열의 각 단어 첫 글자가 대문자가 되도록 하는 함수 만들기
입력 인자: string 타입 문자열
리턴 값: string
주의 사항: 단어는 공백으로 구분, 연속된 공백 존재 가능, 빈 문자열 입력 시 리턴 값은 빈 문자열
function letterCapitalize(str) {
// TODO: 여기에 코드를 작성합니다.
// 공백을 구분자?로 해서 각 글자를 구분
// 각 글자의 첫글자를 대문자로 문자열 리턴
// charAt() 과 slice 이용? toUpperCase? split?
if(str.length===0){ // 빈 문자열 입력시 빈 문자열 리턴
return '';
}
// 연속된 공백?
let temp=str.split(' '); // 공백(' ')을 구분자로 하여 단어를 배열에 넣는다
let tempStr=''; // 첫글자 대문자 변환을 위한 임시 변수 선언
// console.log(temp);
for(let i=0;i<temp.length;i++){
if(temp[i]!==''){ // 연속된 공백의 경우 그대로 공백을 출력하고 아닌 경우에 대문자 변환 실행
tempStr=temp[i][0].toUpperCase()+temp[i].slice(1); // 배열의 첫글자(string)만 대문자 변환 후 첫글자만 자른 나머지 부분을 합침
temp[i]=tempStr; // 다시 배열에 그 값을 할당
}
// console.log(temp);
}
return temp.join(' '); // 배열을 공백을 구분자로 하여 문자열화 리턴
}
'알고리즘 연습' 카테고리의 다른 글
버블(거품) 정렬 알고리즘 (0) | 2021.10.13 |
---|---|
알고리즘 연습 - 문자열 배열을 입력 받아 가장 길고, 짧은 문자열을 제거 (0) | 2021.09.17 |
알고리즘 연습 - 연속된 홀수 문자열 사이에 특정 문자 추가 (0) | 2021.09.16 |
알고리즘 연습 - 2차원 배열의 요소로 만든 객체를 리턴하는 함수 구현 (0) | 2021.09.15 |
알고리즘 연습 - 2의 거듭제곱의 여부를 리턴하는 함수 (0) | 2021.09.13 |