【问题标题】:Formatting numbers through ExtJS or javascript通过 ExtJS 或 javascript 格式化数字
【发布时间】:2013-06-05 09:09:04
【问题描述】:

我正在使用 string.Format() 在服务器端格式化一些数字。

double dd = 15453434.5345;
            Console.Write(String.Format("{0:N0}", dd));
            Console.Read();

以上代码生成:

15,453,435

数字四舍五入,我们可以看到逗号分隔符。如何使用 ExtJS 实现这一点。

【问题讨论】:

    标签: javascript extjs4 extjs4.1


    【解决方案1】:

    看看Ext.util.Format

    这个类是格式化函数的集中位置。它包括格式化各种不同类型数据的函数,例如文本、日期和数值。

    选项包括:

    • 千分隔符
    • 十进制分隔符
    • currenyPrecision
    • 货币符号
    • currencyAtEnd

    例子:

    Ext.util.Format.thousandSeparator = ',';
    Ext.util.Format.decimalSeparator = ',';
    var num = (15453434.5345).toFixed(0);
    
    //And then:
    Ext.util.Format.number(num, '0,000.00'); //outputs 15,453,435
    

    【讨论】:

    • 即使浏览器文化发生变化,它还能工作吗?由于我明确指定了千位分隔符和小数点分隔符,我假设千位分隔符和小数点分隔符不会根据浏览器文化而改变。
    • 如果您这样指定,则不会更改,但如果您需要更改,请在本地化中配置此选项。
    • 这里没有任何理由使用/i。或者永远……真的。
    • @DavorZubak:如何使用它来更改网格单元格中的值。我知道我可以使用渲染器功能。函数 renderGridCells(value, metadata, record, rowIndex, colIndex, str, gridView) { return value;但我不确定我怎么说 var num = value.toFixed(0); ?这行得通吗?
    • 只使用 'value.toFixed(0)' 你会使用 'value'
    猜你喜欢
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    • 2022-09-26
    • 1970-01-01
    相关资源
    最近更新 更多