javascript - 输入掩码组的分割长度

标签 javascript string-formatting

我该如何在这里以不同的方式分割数字,例如 XXX-XXX-XXXX?

String.prototype.toCardFormat = function () {
    return this.replace(/[^0-9]/g, "").substr(0, 16).split("").reduce(cardFormat, "");
    function cardFormat(str, l, i) {
        return str + ((!i || (i % 4)) ? "" : "-") + l;
    }
};

jsfiddle

最佳答案

这里是更新的 fiddle 的链接。向您的函数添加 OR 条件。

 function cardFormat(str, l, i) {
    return str + ((!i || (i % 3) || i > 8) ? "" : "-") + l;
 }

关于javascript - 输入掩码组的分割长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32213609/

相关文章:

c# - 双字符串转换

wpf - 字符串格式的问题

ios - 如何在浮点值中显示两位数字

javascript - PHP 加/减按钮无法正常工作

javascript - 如何在第一个元素的 ng-repeat 中设置 Angular 模板中的变量

javascript - 禁用滚动功能

javascript - 尝试实现特定于 Django 模型属性的“阅读更多”按钮

javascript - 使用 karma-browserify 对 AngularJS 应用程序进行单元测试

java - String.format 向长/字符串添加点

python - 在Python中读取格式化的多行