Numeral.js - 没有英镑的支持吗?

时间:2016-05-09 22:03:58

标签: javascript

我正在尝试使用片刻JS格式化货币值的输出,并使用其网站p上的示例并对英镑'$ 0,0[.]00'进行编辑仅输出值,而不是英镑符号

数字不支持美元以外的货币吗?

我使用的代码是:

'£ 0,0[.]00'

3 个答案:

答案 0 :(得分:2)

导入语言环境,然后手动进行设置。

import numeral from 'numeral';
import 'numeral/locales/en-gb';

numeral.locale('en-gb');

numeral('1234.56').format('$0,0.00'); // £1,234.56

答案 1 :(得分:1)

un–minified code的第67和68行,有:

var amount = '£' + numeral(2456.01231).format('0,0[.]00');

console.log(amount); // £2,456.01

所以是的,似乎“$”是唯一被识别的货币符号。您可以单独添加货币符号,例如:

foreach (var process in Process.GetProcessesByName("apppreventinglogoff.exe"))
{
    process.Kill();
}

或扩展库以处理其他货币符号。

使用ISO符号GBP可能更好,这不是含糊不清的。有许多货币使用£符号,因为有许多货币使用$。

答案 2 :(得分:0)

请记住,最初是两年多以前回答的,我想提供一个替代答案。数字现在支持locales,这意味着您可以选择不同的货币格式。

我在代码库中所做的是:

  1. 导入数字并要求使用GB语言环境
  2. 使用GB语言环境定义默认格式
  3. 使用numeral(value).format()应用我刚刚定义的默认格式

外观如下:

import * as numeral from 'numeral';
require('numeral/locales/en-gb');

numeral.locale('en-gb');
numeral.defaultFormat('$0,0.00');

numeral(200).format(); // £200.00
numeral(1234).format(); // £1,234.00
numeral(5431.31).format(); // £5,431.31

注意:在指定numeral.defaultFormat('$0,0.00')时,您仍然需要使用美元符号。但是,由于使用GB语言环境,数字实际上将代替£。将'£0,0.00'用作格式实际上不会呈现任何货币符号。