将数值格式化为金额的 JS 插件 accountingjs,上一篇文章介绍了它的使用方法,本文对该插件的文档进行说明。

文档

有关每种方法的参数的信息。 有关更多示例,请参阅上文的库方法。 可选参数以[斜体]标明,并带有默认值。

1、accounting.settings

// 控制库方法默认参数的Settings对象:
accounting.settings = {
    currency: {
        symbol : "$",   // 默认货币符号是 '$'
        format: "%s%v", // 控制输出:%s =符号,%v =值/数字(可以是对象:见下文)
        decimal : ".",  // 小数点分隔符
        thousand: ",",  // 千位分隔符
        precision : 2   // 小数位数
    },
    number: {
        precision : 0,  // 数字上的默认精度是 0
        thousand: ",",
        decimal : "."
    }
}

// 以下可以在外部更改以编辑库的默认值:
accounting.settings.currency.format = "%s %v";

// 格式可以是一个对象,用`pos`,`neg`和`zero`:
accounting.settings.currency.format = {
    pos : "%s %v",   // 正值,例如: "$ 1.00" (必须)
    neg : "%s (%v)", // 负值,例如: "$ (1.00)" [可选]
    zero: "%s  -- "  // 0,例如: "$  --" [可选]
};

// 使用underscore.js的示例 - 扩展默认设置(也适用于jQuery中的$ .extend):
accounting.settings.number = _.defaults({
    precision: 2,
    thousand: " "
}, accounting.settings.number);

2、accounting.formatMoney()

// 标准用法和参数(返回字符串):
accounting.formatMoney(number,[symbol = "$"],[precision = 2],[thousand = ","],[decimal = "."],[format = "%s%v"])

// 第二个参数可以是一个对象:
accounting.formatMoney(number, [options])

// options对象中的可用字段,匹配`settings.currency`:
var options = {
    symbol : "$",
    decimal : ".",
    thousand: ",",
    precision : 2,
    format: "%s%v"
};

// 使用方法示例:
accounting.formatMoney(12345678); // $12,345,678.00
accounting.formatMoney(4999.99, "€", 2, ".", ","); // €4.999,99
accounting.formatMoney(-500000, "£ ", 0); // £ -500,000

// options对象的使用方法示例:
accounting.formatMoney(5318008, {
    symbol: "GBP",
    precision: 0,
    thousand: "·",
    format: {
        pos : "%s %v",
        neg : "%s (%v)",
        zero: "%s  --"
    }
});

// 递归格式化一个值数组:
accounting.formatMoney([123, 456, [78, 9]], "$", 0); // ["$123", "$456", ["$78", "$9"]]

3、accounting.formatColumn()

// 标准用法和参数(返回数组):
accounting.formatColumn(list, [symbol = "$"],[precision = 2],[thousand = ","],[decimal = "."],[format = "%s%v"])

// 第二个参数可以是一个对象(参见formatNumber的可用选项):
accounting.formatColumn(list, [options])

// 示例用法(注意,在符号后使用空格为所有值添加任意填充):
var list = [123, 12345];
accounting.formatColumn(list, "$ ", 0); // ["$    123", "$ 12,345"]

// 数字列表可以是一个多维数组(formatColumn 为递归应用):
var list = [[1, 100], [900, 9]];
accounting.formatColumn(list); // [["$  1.00", "$100.00"], ["$900.00", "$  9.00"]]

4、accounting.formatNumber()

// 标准用法和参数(返回字符串):
accounting.formatNumber(number, [precision = 0], [thousand = ","], [decimal = "."])

// 第二个参数也可以是一个匹配`settings.number`的对象:
accounting.formatNumber(number, [object])

// 用法示例:
accounting.formatNumber(9876543); // 9,876,543
accounting.formatNumber(4999.99, 2, ".", ","); // 4.999,99

// options对象的用法示例:
accounting.formatNumber(5318008, {
    precision : 3,
    thousand : " "
});

// 递归格式化一个值数组:
accounting.formatNumber([123456, [7890, 123]]); // ["123,456", ["7,890", "123"]]

5、accounting.toFixed()

// 标准用法和参数(返回字符串):
accounting.toFixed(number, [precision = 0]);

// 用法示例:
accounting.toFixed(0.615, 2); // "0.62"

// 与常规JavaScript `Number.toFixed()` 方法比较:
(0.615).toFixed(2); // "0.61"

6、accounting.unformat()

// 标准用法和参数(返回数值):
accounting.unformat(string, [decimal]);

// 用法示例:
accounting.unformat("GBP £ 12,345,678.90"); // 12345678.9

// 如果使用非标准的十进制分隔符(例如,逗号),unformat()将需要它
//以便确定数字的哪一部分是十进制/浮点:
accounting.unformat("€ 1.000.000,00", ","); // 1000000

accountingjsdemo.jpg

反馈/支持

如果你有反馈或需要支持,可以在 accounting.js Github 存储库上创建问题(issues),或者联系 info@openexchangerates.org

下载

链接

accounting.js 由 Open Exchange Rates 维护 - 为初创公司,中小企业和财富 500 强提供轻量级货币数据 API。

有关错误,问题,建议或贡献? 请在这里发布

关于数值格式化为金额的 JS 插件 accountingjs 全部完成,原文链接

空非易文章均为原创,转载请以链接形式注明本文地址

本文地址:http://pengzhiyong.com/archives/161.html

作者:空非易 | 标签: , , | 浏览:3149