首页 > 其他分享 >js将数字转换为对应的中文数字

js将数字转换为对应的中文数字

时间:2023-11-07 09:44:57浏览次数:26  
标签:中文数字 replace num 换成 result arr1 var js 对应

/**
 * 将数字转换为中文
 * @param {} num
 * @returns
 */
export const changeNumToHan = (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
  }
  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
};

标签:中文数字,replace,num,换成,result,arr1,var,js,对应
From: https://www.cnblogs.com/guozhiqiang/p/17814313.html

相关文章

  • 在NestJS应用程序中使用 Unleash 实现功能切换的指南
    前言近年来,软件开发行业迅速发展,功能开关(FeatureToggle)成为了一种常见的开发实践。通过功能开关,可以在运行时动态地启用或禁用应用程序的特定功能,以提供更灵活的软件交付和配置管理。对于使用NestJS框架构建的应用程序而言,实现功能开关也是一项重要的任务。而Unleash是一个......
  • js 数组按指定字段转map-list结构
    js数组按指定字段转map-list结构背景介绍在开发过程中经常会出现接口返回整个数组,我们需要将数组进行二次处理,如下格式按照不同功能模块(type)进行数据拆分原始数据constlist=[{"type":"red","id":1,"name":"a","count":1}, {"type":"red","......
  • js获去select选中值
    我想获取select选中的value,或者text,或者……比如这个:第一个option第二个option一:JavaScript原生的方法1:拿到select对象:`varmyselect=document.getElementById("select");2:拿到选中项的索引:varindex=myselect.selectedIndex;//selectedIndex代表的是你所选中项的ind......
  • (Lora训练)(承接midjourney数据修改)(建对应名称txt与删txt内部后缀,括号,数字与转换下划线)Lo
    importosimportredefcreate_txt_from_image():#请求用户输入文件夹地址root_folder=input("请输入图片所在文件夹的完整路径:")#判断路径是否存在ifnotos.path.exists(root_folder):print("路径不存在,请检查输入的地址。")return#用......
  • js之文档对象操作
    DOM:文档对象模型怎样选择对应的元素(即标签)?对元素能做哪些操作?DOM中将HTML文档视为树结构节点:网页中的所有内容叫节点。案例:网页开关灯渲染效果:......
  • JS 怎么获取视频第一帧作为封面图?
    要获取视频的第一帧作为封面图,你可以使用HTML5的<video>元素和JavaScript来实现。下面是一个简单的步骤:在HTML中,创建一个<video>元素,并设置视频的路径或URL:<videoid="myVideo"src="path/to/video.mp4"width="320"height="240"></video>在JavaScript中,......
  • Vue.js中如何将v-model与方法绑定
    在Vue.js中,可以使用v-model指令将表单元素的值与Vue实例中的数据属性进行双向绑定。如果你希望将v-model与方法绑定,可以使用计算属性或者自定义指令来实现。使用计算属性:通过定义一个计算属性来处理v-model的绑定,并在需要的时候调用方法。下面是一个示例:<template><d......
  • 如何在不刷新页面的情况下更改Nuxt.js路由器的路由参数?
    要在不刷新页面的情况下更改Nuxt.js路由器的路由参数,你可以使用Nuxt.js提供的$router.push方法,并传递一个新的路由对象。下面是一个示例://使用$router.push更新路由参数this.$router.push({path:'/your-route-path',query:{param1:'value1',param2:'value2'......
  • 如何在Vue.js中添加headers(标头) 使用 axios,单独请求,所有请求 添加请求头
    如何在Vue.js中添加headers(标头)使用axios,单独请求,所有请求添加请求头Vue.js是一个流行的前端框架,它以其简单易用的API和高度可组合的架构而闻名。当你构建一个Web应用时,你通常会使用一个HTTP客户端来与API交互。该客户端可以是一个浏览器内部的XMLHttpRequest,也可以......
  • js substring截取字符串,不信你看不懂,简单案例分享
     在JavaScript中,substring 方法用于截取字符串。它返回字符串的一个子集,即原始字符串中介于两个指定下标之间的字符。substring 方法的语法如下:str.substring(indexStart[,indexEnd])indexStart:必需的参数,表示要提取的第一个字符的下标(位置)。如果 indexStart 大于 ind......