문자열을 입력받아 해당 문자열에 등장하는 두 칸의 공백을 모두 한 칸의 공백으로 바꾼 문자열을 리턴해야 합니다.
입력
인자 1 : str
string
타입의 문자열출력
string
타입의 문자열주의 사항
let output = convertDoubleSpaceToSingle('string with double spaces');
console.log(output); // --> "string with double spaces"
function convertDoubleSpaceToSingle(str) {
// TODO: 여기에 코드를 작성합니다.
return str.split(' ').join(' ');
}
function convertDoubleSpaceToSingle(str) {
let result = '';
let before = '';
for (let i = 0; i < str.length; i++) {
if (before !== ' ' || str[i] !== ' ') {
result = result + str[i];
}
before = str[i];
}
return result;
}
function convertDoubleSpaceToSingle(str) {
let result = '';
let before = '';
for (let i = 0; i < str.length; i++) {
// 직전의 문자가 공백이고, 현재의 문자도 공백인 경우
// 즉, 현재의 문자가 두 번째 공백인 경우(에만), 무시한다.
// 2. 이전 문자가 공백이 아니거나
// 지금도 공백이 아닐 경우에만 추가
// 3. 지금 문자가 공백인데 이전 문자가 아니였으면 추가
// 4. 이전 문자가 공백인데 지금 문자가 아니면 추가
// 5. 이전 지금 문자 모두 공백이면 false / 이전문자 공백으로 유지
if (before !== ' ' || str[i] !== ' ') {
result = result + str[i];
}
// 1. 이전 문자에 하나씩 넣음
before = str[i];
}
return result;
}