padEnd() メソッドは、最終的な文字列が指定された長さに到達するように、現在の文字列を指定した文字列で(繰り返し)延長します。延長は、現在の文字列の終端(右)から適用されます。

構文

str.padEnd(targetLength [, padString])

パラメーター

targetLength
現在の文字列の延長後の長さ。パラメーターが現在の文字列の長さよりも短い場合、現在の文字列が返される。
padString Optional
現在の文字列を延長するための文字列。この文字列が長すぎる場合、切り捨てられて、左の部分が適用されます。 このパラメーターの既定値は、" " (U+0020)。

戻り値

現在の文字列の末尾に延長が適用された String

'abc'.padEnd(10);         // "abc       "
'abc'.padEnd(10, "foo");  // "abcfoofoof"
'abc'.padEnd(6,"123465"); // "abc123"
'abc'.padEnd(1);           // "abc"

Polyfill

String.prototype.padEnd() がブラウザで利用不可であれば、他のコードよりも先に以下のコードを実行してください。

// https://github.com/uxitten/polyfill/blob/master/string.polyfill.js
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padEnd
if (!String.prototype.padEnd) {
    String.prototype.padEnd = function padEnd(targetLength,padString) {
        targetLength = targetLength>>0; //floor if number or convert non-number to 0;
        padString = String((typeof padString !== 'undefined' ? padString : ' '));
        if (this.length > targetLength) {
            return String(this);
        }
        else {
            targetLength = targetLength-this.length;
            if (targetLength > padString.length) {
                padString += padString.repeat(targetLength/padString.length); //append to original to ensure we are longer than needed
            }
            return String(this) + padString.slice(0,targetLength);
        }
    };
}

仕様

仕様 状況 コメント
ECMAScript Latest Draft (ECMA-262)
String.prototype.padEnd の定義
ドラフト ECMAScript 2017で初期定義
ECMAScript 2017 (ECMA-262)
String.prototype.padEnd の定義
標準  


ブラウザ実装状況

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung InternetNode.js
基本対応Chrome 完全対応 57Edge 完全対応 15Firefox 完全対応 48IE 未対応 なしOpera 完全対応 44Safari 完全対応 10WebView Android 完全対応 57Chrome Android 完全対応 57Edge Mobile 完全対応 ありFirefox Android 完全対応 48Opera Android 完全対応 44Safari iOS 完全対応 10Samsung Internet Android 完全対応 7.0nodejs 完全対応 8.0.0
完全対応 8.0.0
完全対応 7.0.0
無効
無効 From version 7.0.0: this feature is behind the --harmony runtime flag.

凡例

完全対応  
完全対応
未対応  
未対応
ユーザーが明示的にこの機能を有効にしなければなりません。
ユーザーが明示的にこの機能を有効にしなければなりません。

 

 

ドキュメントのタグと貢献者

このページの貢献者: isdh, YuichiNukiyama
最終更新者: isdh,