JS格式化数字
/**
* @description: 数字处理-保留n位小数(小数位数不足自动补0;不区分小数位是否有效)
* @param {Number} num 数字
* @param {Number} n 保留小数位数
* @return {Number} formatNum
*/
export const getNumDec = (num = 0, n = 0) => {
let newNum = Number(num)
newNum = Number.isNaN(newNum) ? 0 : newNum
const formatNum = newNum.toFixed(n)
return formatNum
}/**
* @description: 数字处理-保留n位有效小数
* @param {Number} num 数字
* @param {Number} n 保留有效小数位数
* @return {Number} formatNum
*/
export const getNumVaildDec = (num = 0, n = 0) => {
let newNum = Number(num)
newNum = Number.isNaN(newNum) ? 0 : newNum
const formatNum = Math.round(newNum * Math.pow(10, n)) / Math.pow(10, n)
return formatNum
}/**
* @description: 数字处理-保留n1位有效小数,自动补n2个0
* @param {Number} num 数字
* @param {Number} n1 保留有效小数位数
* @param {Number} n2 补0位数
* @return {Number} formatNum
*/
export const getNumVaildDec0 = (num = 0, n1 = 0, n2) => {
n2 = n2 || n1
let newNum = Number(num)
newNum = Number.isNaN(newNum) ? 0 : newNum
// const decIndex = String(newNum).indexOf(".") + 1;
//获取小数点的位置
// const decCount = String(newNum).length - decIndex;
//获取小数点后的个数
let newNum2 = Math.round(newNum * Math.pow(10, n1)) / Math.pow(10, n1)
const formatNum = Number.isInteger(newNum2) ? newNum2.toFixed(n2) : newNum2.toFixed(n1)
return formatNum
}