소개
문자열에 패딩을 추가하는 것은 필수 작업일 수 있습니다 정렬이나 서식 지정 등 다양한 이유로 인해. 이 문서에서는 JavaScript에서 문자열을 지정된 길이로 채우는 방법을 살펴봅니다.
ES8 솔루션
ECMAScript 2017(ES8)에서는 String.padStart를 도입하여 문자열 채우기를 쉽게 만들었습니다. 구문은 다음과 같습니다.
string.padStart(targetLength, [padString])
예:
"Jonas".padStart(10); // Default pad string is a space "42".padStart(6, "0"); // Pad with "0" "*".padStart(8, "-/|\"); // produces '-/|\-/|*'
ES8 이전 브라우저용 Polyfill
브라우저의 경우 ES8을 지원하지 않는 경우 폴리필은 다음과 같습니다. 사용됨:
String.prototype.padStart = function (targetLength, padString) { if (this.length >= targetLength) { return this; } padString = padString !== undefined ? padString : ' '; return padString.repeat((targetLength - this.length) / padString.length) + this; };
클래식 솔루션
ES8 이전에는 앞에 패딩을 추가하는 일반적인 접근 방식이 있었습니다.
var n = 123 String("00000" + n).slice(-5); // returns 00123 ("00000" + n).slice(-5); // returns 00123 (" " + n).slice(-5); // returns " 123" (with two spaces)
문자열 객체 확장
여기 String 확장이 있습니다. 개체:
String.prototype.paddingLeft = function (paddingValue) { return String(paddingValue + this).slice(-paddingValue.length); };
사용 예:
function getFormattedTime(date) { var hours = date.getHours(); var minutes = date.getMinutes(); hours = hours.toString().paddingLeft("00"); minutes = minutes.toString().paddingLeft("00"); return "{0}:{1}".format(hours, minutes); }; String.prototype.format = function () { var args = arguments; return this.replace(/{(\d+)}/g, function (match, number) { return typeof args[number] != 'undefined' ? args[number] : match; }); };
"15:30" 형식으로 시간을 반환합니다.
위 내용은 JavaScript에서 문자열을 특정 길이로 어떻게 채울 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!