Javascript 千位分隔符/字符串格式

标签 javascript string numbers format

<分区>

Javascript 中有格式化数字和字符串的函数吗?

我正在寻找一种用于字符串或数字的千位分隔符的方法... (类似于 C# 中的 String.Format)

最佳答案

更新(7年后)

下面原始答案中引用的引用文献是错误的。 一个内置函数,这正是 kaiser 在下面建议的:toLocaleString

所以你可以这样做:

(1234567.89).toLocaleString('en')              // for numeric input
parseFloat("1234567.89").toLocaleString('en')  // for string input

下面实现的功能也可以,但根本不是必需的。

[ 1999],我相信这意味着它早在 IE 5.5 就得到了支持。)


原始答案

根据 more reliable reference 的说法,没有用于向数字添加逗号的内置函数。但是该页面包含一个如何自己编写代码的示例:

function addCommas(nStr) {
    nStr += '';
    var x = nStr.split('.');
    var x1 = x[0];
    var x2 = x.length > 1 ? '.' + x[1] : '';
    var rgx = /(\d+)(\d{3})/;
    while (rgx.test(x1)) {
            x1 = x1.replace(rgx, '$1' + ',' + '$2');
    }
    return x1 + x2;
}

编辑: 换一种方式(将带逗号的字符串转换为数字),您可以这样做:

parseFloat("1,234,567.89".replace(/,/g,''))

关于Javascript 千位分隔符/字符串格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3753483/

相关文章:

java - 我如何使用java来获取字符串中的两到两个数字并转换它们

javascript - 如何从 Knockout.js 中删除嵌套对象并同时删除渲染的模板

java - 我的代码给出了 java.lang.StringIndexOutOfBoundsException 并且命令以非零状态退出

javascript - 如何使用bootstrap制作选项卡,使其选项卡显示某个类别的产品?

python - numpy 中 str 类输入的默认 dtype 是什么?

c - 没有除法运算符的除以 3

c - 读取一个字符串并将其放入C中的(int)中

java - Long vs Integer,long vs int,什么时候使用?

javascript - Angular 6依赖注入(inject)

javascript - Vuejs - 在样式模板中使用变量作为背景图像