我试图四舍五入。例如,如果我有这个号码:
12,645,982
我想四舍五入并将其显示为:
13 mil
或者,如果我有这个电话号码:
1,345
我想四舍五入并将其显示为:
1 thousand
如何在JavaScript或jQuery中做到这一点?

最佳答案

这是一个实用程序函数,可格式化数千,数百万和数十亿:

function MoneyFormat(labelValue)
  {
  // Nine Zeroes for Billions
  return Math.abs(Number(labelValue)) >= 1.0e+9

       ? Math.abs(Number(labelValue)) / 1.0e+9 + "B"
       // Six Zeroes for Millions
       : Math.abs(Number(labelValue)) >= 1.0e+6

       ? Math.abs(Number(labelValue)) / 1.0e+6 + "M"
       // Three Zeroes for Thousands
       : Math.abs(Number(labelValue)) >= 1.0e+3

       ? Math.abs(Number(labelValue)) / 1.0e+3 + "K"

       : Math.abs(Number(labelValue));

   }

用法:
   var foo = MoneyFormat(1355);
   //Reformat result to one decimal place
   console.log(parseFloat(foo).toPrecision(2) + foo.replace(/[^B|M|K]/g,""))

引用
  • ECMAScript-5: Annex A
  • Displaying numbers in JavaScript
  • 关于javascript - 如何用JavaScript数以百万计?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12900332/

    10-12 15:33