js 将数字转换成中文大写

//完成将 toChineseNum, 可以将数字转换成中文大写的表示,处理到万级别,例如 toChineseNum(12345),返回 一万二千三百四十五。
        const toChinesNum = (num) => {
            let changeNum = ['', '', '', '', '', '', '', '', '', '']; //changeNum[0] = "零"
            let unit = ["", "", "", "", ""];
            num = parseInt(num);
            let getWan = (temp) => {
                let strArr = temp.toString().split("").reverse();
                let newNum = "";
                for (var i = 0; i < strArr.length; i++) {
                    newNum = (i == 0 && strArr[i] == 0 ? "" : (i > 0 && strArr[i] == 0 && strArr[i - 1] == 0 ? "" : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i]))) + newNum;
                }
                return newNum;
            }
            let overWan = Math.floor(num / 10000);
            let noWan = num % 10000;
            if (noWan.toString().length < 4) noWan = "0" + noWan;
            return overWan ? getWan(overWan) + "" + getWan(noWan) : getWan(num);
            
        }

猜你喜欢

转载自www.cnblogs.com/zhukaijie/p/12072247.html