//* 金額千分位加逗號,保留2位小數,不足補零,否則四捨五入
// * 引數說明:
// * num:要格式化的數字 string或者number
// * decimals:保留幾位小數
// * dec_point:小數點符號
// * thousandssep:千分位符號
// return 金額格式的字串,如'1,234,567.45'
// * */
number (num, decimals, thousandssep)
let prec = !isfinite(+decimals) ? 0 : math.abs(decimals) // 保留的位數一定是有限位數的正整數
let sep = (typeof thousandssep === 'undefined') ? ',' : thousandssep
let s = num.tostring().replace(/,/g, '') // 字串,將,變成'';
let p = parsefloat(s) // 解析乙個字串,並返回乙個浮點數
let n = isnan(p) ? 1 : p
let formatnum = n.tofixed(prec).tostring().replace(/(\d)(?=(\d)+\.)/g, function ($0, $1) )
return num ? formatnum : ''
}// let num = number(333322.8199, 5,'')
// console.log(num,'nm')
方法中 判斷了是否是nan 和無窮大預設千分位加逗號分隔 金額格式化
正確的方式 decimalformat mf new decimalformat system.out.println mf.format 0.66 這樣可以處理小於1的金額。之前在網上看了很多金額的格式化方式,基本有兩種。1.全 模式,自己寫出分割邏輯,網上很多,這裡就不說明了。2.同樣是使用de...
js常用方法 格式化金額 比較時間物件
秒轉時分秒 param 秒 returns result,時 分 秒 function formatseconds value var result result.push thetime2 result.push thetime1 result.push thetime return result...
JS數字金額格式化(千位符)
數字格式化 param num 數字 param separator 分隔符號,可選引數,預設 英文逗號 function numberformat num,separator separator separator return num.replace b d d g,separator 處理無效...