如何使用SI前缀格式四舍五入到小数点后2位?

How to round off to 2 decimal places with format SI prefix?(如何使用SI前缀格式四舍五入到小数点后2位?)

本文介绍了如何使用SI前缀格式四舍五入到小数点后2位?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的案例中的示例:

d3.format("~s")(656628); //656.628k

但我的预期结果:656.63k

我希望使用d3格式选项,而不是手动处理。

实时测试:https://npm.runkit.com/d3-format

推荐答案

您只需要d3.formatPrefix,它...

在以定点表示法格式化之前,将值转换为指定数字参考值的相应SI前缀的单位。

...,".2"作为说明符,您自己的数字作为值。

这是带有您的号码的演示:

数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">
const myNumber = 656628;
console.log(d3.formatPrefix(".2", myNumber)(myNumber));
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>

这将为您提供预期结果:656.63k

为了完整起见,还提供了其他一些数字:

数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">
[1232, 7676546655, 665, 0.0012, 8887878].forEach(function(d) {
  console.log("Number: " + d + " - Your format: " + d3.formatPrefix(".2", d)(d))
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>

这篇关于如何使用SI前缀格式四舍五入到小数点后2位?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何使用SI前缀格式四舍五入到小数点后2位?

基础教程推荐