> 웹 프론트엔드 > JS 튜토리얼 > JavaScript에서 문자열을 원하는 길이로 어떻게 채울 수 있습니까?

JavaScript에서 문자열을 원하는 길이로 어떻게 채울 수 있습니까?

Susan Sarandon
풀어 주다: 2024-11-30 08:01:14
원래의
878명이 탐색했습니다.

How Can I Pad Strings to a Desired Length in JavaScript?

JavaScript에서 문자열 채우기

소개

JavaScript는 특정 문자열 조작 작업을 수행하기 위한 다양한 방법을 제공합니다. 그러한 작업 중 하나는 문자열을 원하는 길이로 채우고 빈 공간을 문자로 채우는 것입니다. 이 문서에서는 JavaScript에서 문자열을 채우는 다양한 방법에 대해 설명합니다.

String.padStart를 사용한 솔루션

ECMAScript 2017(ES8)에서는 이러한 목적으로 String.padStart 메서드를 도입했습니다. 원하는 길이와 선택적 패딩 문자열(기본값은 공백)이라는 두 가지 매개변수를 사용합니다.

"Jonas".padStart(10); // Default pad string is a space
"42".padStart(6, "0"); // Pad with "0"
"*".padStart(8, "-/|\"); // produces '-/|\-/|*'
로그인 후 복사

String.padStart에 대한 폴리필

String.padStart가 지원되지 않는 경우 JavaScript 환경에서는 폴리필로 추가할 수 있습니다.

if (!String.prototype.padStart) {
  String.prototype.padStart = function(length, padString) {
    padString = padString || " ";
    if (this.length >= length) return this;
    else return padString.repeat(length - this.length) + this;
  };
}
로그인 후 복사

문자열 사용 연결

문자열을 채우는 간단한 방법은 문자열을 원하는 채우기 문자로 연결하는 것입니다.

var n = 123

String("00000" + n).slice(-5); // returns 00123
("00000" + n).slice(-5); // returns 00123
("     " + n).slice(-5); // returns "  123" (with two spaces)
로그인 후 복사

문자열 개체 확장

문자열 개체를 확장할 수도 있습니다. 편의를 위해 paddingLeft 메소드를 포함합니다.

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿