将数字转化为汉字

时间:2021-09-07 06:41:25

function toChinesNum(num){
var changeNum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'];
var unit = ["", "十", "百", "千", "万"];
num = parseInt(num);
var getWan = (temp) => {
var strArr = temp.toString().split("").reverse();
var 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;
}
var overWan = Math.floor(num / 10000);
var noWan = num % 10000;
if (noWan.toString().length < 4) noWan = "0" + noWan;
return overWan ? getWan(overWan) + "万" + getWan(noWan) : getWan(num);
}

toChinesNum(12345)