可以做网站的编程有什么百度一下一下你就知道
需求:将小数转成中文表示,例如后台返回0.0001,则显示为万分之一。
不考虑超过100%的情况,并且位数不太长(如果小数位数过长,可以再加兼容代码去处理)。
直接贴代码:
_ChinaNumber = (numberValue) => {if(numberValue.indexOf('.') < 0){return numberValue;}var unit = "十百千万十百千"; // 对应单位var chineseNumber = "零一二三四五六七八九"; // 汉字数字//获取小数点后位数var pointNumber = numberValue.split(".")[1].length//得到中文单位var unitStr = unit.substring(pointNumber - 1, pointNumber);//大于5位后面加上万,目前只支持到千万,后需要支持更多需加逻辑判断if (pointNumber >= 5) {unitStr = unitStr + '万';}//得到中文值(只支持到万位的数字,超过则显示异常)var number = Math.pow(10, pointNumber);var rateNumber = numberValue * number;var rateLenth = rateNumber.toString().length;var rateStr = '';//拼接中文值for (var index = 0; index < rateLenth; index++) {var strIndex = Number(rateNumber.toString().substring(index, index + 1))rateStr = rateStr + chineseNumber.substring(strIndex, strIndex + 1);if (index + 1 !== rateLenth) {rateStr = rateStr + unit.substring(rateLenth - index - 2, rateLenth - index - 1);}}//拼接中文结果var chineseValue = unitStr + '分之' + rateStr; // 转换后的汉字金额return chineseValue;}
目前支持到"千万级"分之"万级"