美文网首页
阿拉伯数字转汉语

阿拉伯数字转汉语

作者: 云高风轻 | 来源:发表于2023-11-17 08:58 被阅读0次

1. 前言

  1. 单个功能一篇发展也方便自己使用
  2. 尤其是是序号性质的阿拉伯数字转汉语比较常见

2. 代码

  /*
   * @desc 序号阿拉伯数字转汉语
   * @param num 转换数字
   */
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;
  },


参考资料


初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉

相关文章

网友评论

      本文标题:阿拉伯数字转汉语

      本文链接:https://www.haomeiwen.com/subject/jqiywdtx.html