1. 前言
- 單個功能一篇發(fā)展也方便自己使用
- 尤其是是序號性質的阿拉伯數(shù)字轉漢語比較常見
2. 代碼
/*
* @desc 序號阿拉伯數(shù)字轉漢語
* @param num 轉換數(shù)字
*/
const digitaltToChinese = (num)=> {
var arr1 = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九"];
var arr2 = [
"",
"十",
"百",
"千",
"萬",
"十",
"百",
"千",
"億",
"十",
"百",
"千",
"萬",
"十",
"百",
"千",
"億",
];
if (!num || isNaN(num)) return "零";
var english = num.toString().split("");
var result = "";
for (var i = 0; i < english.length; i++) {
var des_i = english.length - 1 - i; // 倒序排列設值
result = arr2[i] + result;
var arr1_index = english[des_i];
result = arr1[arr1_index] + result;
}
// console.log('res:', result)
result = result.replace(/零(千|百|十)/g, "零").replace(/十零/g, "十"); // 將【零千执虹、零百】換成【零】 【十零】換成【十】
result = result.replace(/零+/g, "零"); // 合并中間多個零為一個零
result = result.replace(/零億/g, "億").replace(/零萬/g, "萬"); // 將【零億】換成【億】【零萬】換成【萬】
result = result.replace(/億萬/g, "億"); // 將【億萬】換成【億】
result = result.replace(/零+$/, ""); // 移除末尾的零
// 將【一十】換成【十】
result = result.replace(/^一十/g, "十");
return result;
},
參考資料
初心
我所有的文章都只是基于入門,初步的了解析恢;是自己的知識體系梳理,如有錯誤,道友們一起溝通交流;
如果能幫助到有緣人,非常的榮幸,一切為了部落
的崛起;
共勉