최신 자바스크립트 표준 메써드를 사용
ES2017 부터는 문자열에 padStart(), padEnd() 메써드가 표준으로 제공됩니다.
사용자 정의해서 쓰던 위 메써드를 대체하는 표준 메써드로 동일한 기능 이상을 제공합니다.
사용자 정의해서 사용하는 기능보다 더 강력한 기능을 제공하기 때문에 다양한 용도로 활용할 수도 있습니다.
사용 방법은 다음과 같습니다.
'03'.padStart(6,'0'); // '000003' '2500'.padStart(8,'$'); // "$$$$2500" '12345'.padStart(10); // " 12345" 'abc'.padEnd(9,'123'); // "abc123123" '주석문'.padStart(6,'*').padEnd(9,'*'); // "***주석문***"
YYYY-MM-DD 날짜 생성 var dt = new Date(); console.log(dt.getFullYear()+ '-' + dt.getMonth().toString().padStart(2,'0') + '-' + dt.getDate().toString().padStart(2,'0')); // "2020-05-09"
다만, 구버전 웹브라우저에서는 호환성 문제가 있습니다.(인터넷 익스플로러에서 미지원)
깃헙에 공개된 문자열 폴리필(polyfill) 자바스크립트 라이브러리를 링크해서 사용하면 인터넷익스플로러에서 padStart(), padEnd() 메써드 지원이 가능해집니다.
https://github.com/behnammodi/polyfill/blob/master/string.polyfill.js
폴리필 라이브러리를 사용하지 않고 padStart(), padEnd() 만 사용하고 싶은 경우 모질라에서
프로토타입 메써드 구현용 샘플 코드를 제공하므로 이걸 사용해도 됩니다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/padStart
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/padEnd
댓글 ( 4)
댓글 남기기