NumberFormatterUtils.ets
1.04 KB
export class NumberFormatterUtils {
/**
* 数据小于一万返回原数据,大于一万保留小数点后一位,加上万字
* @param num
* @returns
*/
static formatNumberWithWan(inputNumber: number | String): string {
const num = typeof inputNumber === 'number' ? inputNumber : Number(inputNumber);
if (Number.isNaN(num)) {
return '';
} else if (num < 10000) {
return num.toString();
} else if (num < 100000000) {
// 处理 1万到1亿之间的数字,使用万作为单位,小数点后为0则不显示
const wanUnit = num / 10000;
const formattedWan = wanUnit.toFixed(1);
const wanUnitW = wanUnit.toFixed(0)
return formattedWan.endsWith('.0') ? `${wanUnitW}万` : `${formattedWan}万`;
} else {
// 数字达到1亿及以上时,转换为亿并处理小数点后为0的情况
const yiUnit = num / 100000000;
const formattedYi = yiUnit.toFixed(1);
return formattedYi.endsWith('.0') ? `${formattedYi.slice(0, -2)}亿` : `${formattedYi}亿`;
}
}
}