Javascript 我有一个数字,我需要将其格式化为十亿或百万

Javascript 我有一个数字,我需要将其格式化为十亿或百万,javascript,algorithm,formatting,Javascript,Algorithm,Formatting,我需要一个函数,它接收一个数字并返回格式化的和。 对于expample:我有一个数字-136866516683,它应该返回136.87B(四舍五入)。 你能帮忙吗 这就是我所做的: function fnum(x) { if(x < 1000000000) { return Math.round((x/1000000)) + "M"; } if(x < 1000000000000) { return Math.round((x/1000000000)) + "B";

我需要一个函数,它接收一个数字并返回格式化的和。 对于expample:我有一个数字-136866516683,它应该返回136.87B(四舍五入)。 你能帮忙吗

这就是我所做的:

function fnum(x) {
if(x < 1000000000) {
    return Math.round((x/1000000)) + "M";
}

if(x < 1000000000000) {
    return Math.round((x/1000000000)) + "B";
}

 return "More";
}
函数fnum(x){
如果(x<100000000){
返回数学圆((x/1000000))+“M”;
}
如果(x<1000000000000){
返回数学整数((x/100000000))+“B”;
}
返回“更多”;
}
toFixed()方法将数字转换为字符串,保留指定的小数位数
这是JsFiddle链接

函数fnum(x){
如果(x<100000000){
警报((x/1000000).toFixed(2)+“M”);
}否则如果(x<1000000000000){
警报((x/100000000).toFixed(2)+“B”);
}否则
警惕(“更多”);
}
fnum(136866516683);

您尝试过什么?您在上进行过谷歌搜索吗?我投票将此问题作为非主题关闭,因为用户似乎没有尝试任何东西,只是请求解决方案。@ScottMarcus我已经编写了此函数,但它不会再返回100次,你做过我链接到的谷歌搜索吗?@ScottMarcus:关于Meta的讨论表明,我们将这些问题标记为“太宽”。这对我很有效。
function fnum(x) {
  if (x < 1000000000) {
    alert((x / 1000000).toFixed(2) + "M");
  } else if (x < 1000000000000) {
    alert((x / 1000000000).toFixed(2) + "B");
  } else
    alert("More");
}
fnum(136866516683);