zoukankan      html  css  js  c++  java
  • js 数字转中文

    numToChinese(num) {
      let numArr = ["零","一","二","三","四","五","六","七","八","九"];
      let numLimit = ["亿","万",""];//设置数字上限
      let numUnit = ["千","百","十",""];
      //num四位数是一个阶段对应 numLimit 每个阶段对应一个 numUnit,每个数字对应numArr。
      num = num.toString();
      num = num.split('');
      while (num.length < numLimit.length*4){
        num.unshift('');
      }
      // console.log(num)
      let numLength = num.length;
      let str = "";
      let limit = Math.ceil(numLength/4);
      // console.log(limit)
      for(let i = 1;i <= limit;i++){
        let start = (i -1) * 4;
        let end = i * 4;
        let limitNum = num.slice(start,end);
        // console.log(limitNum)
        for(let j = 0;j <limitNum.length ;j++){
          if(limitNum[j]!==''){
            let char = numArr[limitNum[j]];
            let unit = numUnit[j];
            if(limitNum[j] == 0){
              unit = '';
            }
            str += char+unit;
          }
        }
        let hasValue = limitNum.filter(val=>{
          return val!=='';
        });
        str = str.replace(/(零{2,})/,'零');//中间超过两个零替换为一个零
        if(str!=='零'){
          str = str.replace(/(零*)$/,'');//结尾去掉零
        }
        if(hasValue.length > 0){
          str+=numLimit[i-1];
        }
      }
    
      str = str.replace(/^一十/,'十');
      return str;
    }
  • 相关阅读:
    ROS配置C++14环境
    ubantu查看环境变量
    C++指向函数的指针
    ubantu删除文件(夹)
    ROS环境搭建
    vmware workstation pro 安装ubantu虚拟机
    Win7下删除Ubuntu启动项
    ubantu16.04
    ubantu卸载软件
    github之克隆
  • 原文地址:https://www.cnblogs.com/xiongK/p/14821385.html
Copyright © 2011-2022 走看看