直接上代码,亲测有效
function transCnMoney(number){
let CN_MONEY = "";
let CN_UNIT = '仟佰拾亿仟佰拾万仟佰拾元角分';
number += "00";
let dot = number.indexOf('.');
if (dot >= 0)
number = number.substring(0, dot) + number.substr(dot + 1, 2);
CN_UNIT = CN_UNIT.substr(CN_UNIT.length - number.length);
for (let i = 0; i < number.length; i++)
CN_MONEY += '零壹贰叁肆伍陆柒捌玖'.substr(number.substr(i, 1), 1) + CN_UNIT.substr(i, 1);
return CN_MONEY.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元");
}
console.log(transCnMoney(0.36));
console.log(transCnMoney(125));
console.log(transCnMoney(125.00));
console.log(transCnMoney(125.65));
console.log(transCnMoney(191658741));
结果: