小数转为角分
export default {
methods: {
numberToChinese(num) {
if (typeof num !== 'number' || isNaN(num)) {
return '输入的不是一个有效的数字';
}
const chineseNums = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'];
const units = ['', '十', '百', '千'];
const bigUnits = ['', '万', '亿', '兆'];
const decimalUnits = ['角', '分'];
let integerPart = Math.floor(num);
let decimalPart = num - integerPart;
let str = '';
let zeroFlag = false;
let unitIndex = 0;
let bigUnitIndex = 0;
while (integerPart > 0) {
const digit = integerPart % 10;
if (digit === 0) {
if (!zeroFlag) {
str = chineseNums[digit] + str;
zeroFlag = true;
}
} else {
str = chineseNums[digit] + units[unitIndex] + str;
zeroFlag = false;
}
integerPart = Math.floor(integerPart / 10);
unitIndex++;
if (unitIndex === units.length && integerPart > 0) {
unitIndex = 0;
bigUnitIndex++;
if (bigUnitIndex < bigUnits.length) {
str