1

如何在 javascript 中将这个负大指数 6.849391775995509e-276 变为 6.84?

我正在从我想在我的 ui 中使用缩短版本的 api 取回负指数数,到 2 个小数点。如果重要的话,我会在反应中使用 d3 图表渲染中的数字。

我一直在尝试一些来自 javascript 文档站点的不同技术,但似乎无法实现。是否可以选择使用Immutable.js之类的库?任何帮助将不胜感激。代码片段中使用指数表示法的所有尝试都返回0.00

function financial(x) {
  return Number.parseFloat(x).toFixed(2);
}
console.log(financial(6.849391775995509e-276));
const num = 6.849391775995509e-276
console.log(num.toFixed(2));
const num2 = 6.84939;
console.log(num2.toFixed(2));

console.log(financial('6.849391775995509e-276'));

4

2 回答 2

2
 +num.toString().substr(0,3)

只需将其转换为字符串并取第一个数字即可。

于 2018-01-08T15:19:27.913 回答
1

与乔纳斯的回答类似,但是您想将其包装起来parseFloat()以获取实际数字而不是字符串。

const num = 6.849391775995509e-276
var newNum = parseFloat(num.toString().substr(0,4)) 
console.log(newNum)

于 2018-01-08T15:24:19.013 回答