문제 59 : 빈칸 채우기

less than 1 minute read

문제 59 : 빈칸채우기

// 총 문자열의 길이는 50, 입력받은 문자열을 가운데 정렬하고 나머지는 "="로 채워라.

// 입력
// hi

// 출력
// ========================hi=======================

풀이 1

const str = prompt("문자를 입력하세요.");
const a = str.padStart(25 + Math.floor(str.length / 2), "=");
console.log(a.padEnd(50, "="));

padStart와 padEnd

길이와 문자를 주면 나머지를 채워주는 함수가 있다. 앞부분을 채울 때는 padStart, 뒷부분을 채울 때는 padEnd이다.

// 문법은
str.padEnd(targetLength [, padString])
//이것이다.

가령 “12345”라는 문자열이 주어졌을 때 앞쪽을 “.”으로 채워서 길이가 10이 되어야 한다면 어떻게 해야할까?

let nums = "12345";
const addedNum = nums.padStart(10, ".");

console.log(addedNum);
// .....12345

목표 길이보다 원래의 문자열이 길다면 어떻게 될까?

let nums = "12345";
const addedNum = nums.padStart(1, ".");

console.log(addedNum);
// 12345

정답은 기존 문자열을 그대로 반환한다는 것이다.
뒤에 넣는다는 것만 빼고는 padEnd도 똑같다.

Leave a comment