使用 React 本机 Expo 时如何将数字格式化为货币?

新手上路,请多包涵

如何获取 10000 之类的数字并将其输出为 $10,000.00 ?我什至对 String.format(...) 有问题 Not a function 错误。

我关注了许多文章,所有文章都不完整,也没有工作。我不需要完全国际化,只需要格式化数字的能力

原文由 Choco 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 663
2 个回答

您可以使用这个库 react-number-format 。它有这些特点

  1. 前缀、后缀和千位分隔符。
  2. 自定义格式模式。
  3. 掩蔽。
  4. 自定义格式处理程序。
  5. 将输入中的数字格式化或格式化为简单文本

示例使用

<NumberFormat value={2456981} displayType={'text'} thousandSeparator={true} prefix={'$'} />

产出:2,456,981 美元

原文由 Masuk Helal Anik 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以使用 toFixed 显示 2 个小数点的方法。

 let num = 1000;
console.log(num.toFixed(2)); // 1000.00

你可以像这样使用正则表达式

 function currencyFormat(num) {
   return '$' + num.toFixed(2).replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1,')
}
console.log(currencyFormat(2665)); // $2,665.00

原文由 Robin 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题