padStart的替代方案是什么?

4

我在JavaScript中使用padStart,但它在Internet Explorer上不起作用。我想知道是否有替代方法可以取而代之。谢谢。


1
MDN提供了一个polyfill:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/padStart - Denys Séguret
当你提出这样的问题时,应该提供代码。 - ficuscr
1个回答

6

在 MDN 上有一个 填充方法的 polyfill:

// https://github.com/uxitten/polyfill/blob/master/string.polyfill.js
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart
if (!String.prototype.padStart) {
    String.prototype.padStart = function padStart(targetLength,padString) {
        targetLength = targetLength>>0; //truncate 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 padString.slice(0,targetLength) + String(this);
        }
    };
}

您可以在您的脚本中复制它。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接