JS格式化数字

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 }

    推荐阅读