项目场景:

列表序号采用中文一、二、三,而不是阿拉伯数字1、2、3:


问题描述:

开始是列表结构,本想寻求使用map遍历的index+1,获得对应下标为序号,但UI要求使用中文一,二,三的方式。死写肯定不行。所以有了以下代码:


原因分析:

直接index+1,死转肯定不行,想办法灵活一点。


解决方案:

const toChineseNumber = (n) => {if (!Number.isInteger(n) && n < 0) {throw Error('请输入自然数');}const digits = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'];const positions = ['', '十', '百', '千', '万', '十万', '百万', '千万', '亿', '十亿', '百亿', '千亿'];const charArray = String(n).split('');let result = '';let prevIsZero = false;//处理0  deal zerofor (let i = 0; i < charArray.length; i++) {const ch = charArray[i];if (ch !== '0' && !prevIsZero) {result += digits[parseInt(ch)] + positions[charArray.length - i - 1];} else if (ch === '0') {prevIsZero = true;} else if (ch !== '0' && prevIsZero) {result += '零' + digits[parseInt(ch)] + positions[charArray.length - i - 1];}}//处理十 deal tenif (n < 100) {result = result.replace('一十', '十');}return result;
}
// 调用该方法,并传值,传入你所要转换的阿拉伯数字1 => 一
console.log(toChineseNumber(1));

JavaScript阿拉伯数字“1“转中文数“一“相关推荐

  1. javascript 阿拉伯数字转中文

    javascript 阿拉伯数字转中文:单独处理一十情况 export const numberToChinese = (num) => {if (isNaN(parseInt(num))) { ...

  2. aspose excel中文文档_Excel实战技巧,如何将阿拉伯数字快速转换为中文大小写格式?...

    Hi,大家好,我是小雨!应诸多网友的需求,从今天起小雨每天为大家讲解一个办公软件(Word.Excel.PPT)实战技巧. 第 001 期:如何将阿拉伯数字快速转换为中文大小写格式 Excel最强大的 ...

  3. 输入数字怎么变成大写python_Python将阿拉伯数字转化为中文大写

    利用Python将阿拉伯数字转化为中文大写,其实最麻烦的地方就是中间空多个0的问题,这种情况下,采用拆分法则,将一个大数字,先拆分成整数部分和小 数部分,再对整数部分按照仟.万.亿.兆分位拆分为四个字 ...

  4. Javascript实现数字转中文大写

    最大处理数字位为十亿,转换规则为,千位有零必须读,其他为没零可以不读 比如说一千万零一百元,一千万一千元,一千万一万一千元 思路大概是:先处理共通的,后处理个别特殊的(千位的零:多个零写作一个) r ...

  5. 阿拉伯数字转换成中文算法--计数单位

    今天继续看<算法的乐趣>,学习了阿拉伯数字与中文数字的转化. 汉字用零一二三四五六七八九作为基本计数,与阿拉伯数字靠数字偏移位置的权位不一样,中文数字是才有"数字+权位" ...

  6. java实现将阿拉伯数字转成中文大写工具类

    package com.sqds.utils;/*** <p>Title: money</p>* <p>Description: * *该类是把阿拉伯数字转换成中文 ...

  7. Javascript 获取浏览器窗口中文档(视口)可用尺寸的方法

    摘要: 由于浏览器的差异,许多信息的获取都要考虑兼容性,窗口中文档可用尺寸是一个经常需要用到的信息,由于浏览器不同甚至版本不同,获取的方法也不一样,本文介绍的函数能够兼容各种浏览器,获取这一信息.同时 ...

  8. php如何打出的正方形行列,javascript实现输出指定行数正方形图案的方法

    本文实例讲述了javascript实现输出指定行数正方形图案的方法.分享给大家供大家参考.具体如下: javascript实现输出指定行数的正方形图案:点击生成图案,会有2个提示框,1,输入图案的组成 ...

  9. JavaScript 编程精解 中文第三版 翻译完成

    JavaScript 编程精解 中文第三版 原书:Eloquent JavaScript 3rd edition 译者:飞龙 自豪地采用谷歌翻译 部分参考了<JavaScript 编程精解(第 ...

  10. Python将阿拉伯数字转化为中文大写

    利用Python将阿拉伯数字转化为中文大写,其实最麻烦的地方就是中间空多个0的问题,这种情况下,采用拆分法则,将一个大数字,先拆分成整数部分和小数部分,再对整数部分按照仟.万.亿.兆分位拆分为四个字符 ...

最新文章

  1. Redis---持久化
  2. 2057. [ZLXOI2015]殉国
  3. android内存代码,Android内存优化(五) Lint代码扫描工具
  4. 不要把游戏当游戏,要把游戏当明星
  5. 印度市场,圆不了二线国产手机的美梦
  6. .NET Core 事件总线,分布式事务解决方案:CAP
  7. codevs 1283 等差子序列
  8. 【JEECG Docker安装】CentOS6下docker的安装和使用
  9. 【es】es 分布式一致性原理剖析(三)-Data篇
  10. javax.persistence.TransactionRequiredException: Executing an update/delete query
  11. percona-toolkit源码编译安装
  12. 上海蓝光集团信息安全建设方案
  13. Java 分页工具类
  14. JavaScript 弹出框(警告框、确认框、提示框)
  15. win的反义词_小学英语常见的英语单词反义词大汇总,一定要让孩子掌握!
  16. 统筹高效利用时间——《小强升职记(升级版):时间管理故事书》读后感
  17. 令我“细思极恐”的Faster-R-CNN
  18. 化妆品APP开发快速制作
  19. 【机器学习】算法原理详细推导与实现(七):决策树算法
  20. 2019神舟质量_2019质量周

热门文章

  1. 一个神奇的大学科目《软件工程》,知识点总结+测试题,包你不挂科
  2. 被王思聪抽奖炸了的微博,究竟是算法背锅还是自己作死?
  3. gtj2018如何生成工程量报表_工程量清单计价规范2018
  4. java根据word书签模板填充数据生成pdf输出
  5. 冯诺依曼体系结构_存算一体:突破冯诺依曼架构瓶颈的希望?
  6. 运维(20) 制作启动U盘安装Win10
  7. 秀米排版 × ModStart,提升富文本排版效率
  8. js二进制流转换成图片_JavaScript PNG 图片编码和解码
  9. 如何备考软考高级系统架构师?
  10. 统计字符串中含指定字符个数