美文网首页
前端实现一、二、三、四这样的自增

前端实现一、二、三、四这样的自增

作者: 小遁哥 | 来源:发表于2020-08-31 23:08 被阅读0次

业务中出现了"一级属性"、"二级属性"、"三级属性",因为最多就三级,所以我就

    const strs = ['一', '二', '三'];

那么能不能实现一、二、三、四... 这样的自增呢?

我想到了

"一".charCodeAt()
19968

紧接着

"二".charCodeAt()
20108

然而

"三".charCodeAt()
19977
"四".charCodeAt()
22235
"五".charCodeAt()
20116
"六".charCodeAt()
20845

好吧,让我们总结下规律

单个数字
一、二、三、四、五、六、七、八、九

两个数字
一十二、九十、四十八

三个数字
一百、一百零七、一百二十八

哇哦,像极了递归模式,似乎,从左至右依次处理每个数字,根据其所在的位置转换为对应的字符串,最后拼接即可
举个列子
23
2=>二十
3=>三
二十三

123
1=>一百
2=>二十
3=>三
一百二十三

103
1=>一百
2=>零
3=>三

然而当位数增到五位时,情况又会有些变化

12345
一万二千三百四十五

123456
一十二万三千四百五十六

1234567
一百二十三万四千五百六十七

就处理到千万吧

要四个数分为一组,递归递中归,这不仅让我想到了那个面试题,千分位字符,"1234"=>"1,234",没想到有生之年在不是面试的时候Q到,缘分啊...,还好我记笔记了

好的,已经完成98%了,不过还有以下几点需要处理

四位一组时,有的组不足4位,怎么加"千"、"百",分组时只有一组时,处理加"万"

还有处理0的情况,比如1200120312035000000301010903310009003

情况1: 分组后,每组最后一个数不加零

相关文章

  • 前端实现一、二、三、四这样的自增

    业务中出现了"一级属性"、"二级属性"、"三级属性",因为最多就三级,所以我就 那么能不能实现一、二、三、四......

  • Springboot | MyBatis-Plus的CRUD接

    一、MyBatis-Plus 主要特性二、常用的CRUD接口三、条件构造器四、MyBatis-Plus 实现表的增...

  • PHP操作数据库增删查改

    周末有空弄了下数据库操作,实现了增删查改的基本操作,记录一下。 一、增 二、删 三、查 四、改 API测试 1、增...

  • 公众号推广计划

    一、推广目的 建立更多推广渠道,扩大曝光;实现高效转化 具体:公众号增粉 二、推广时间 三、推广渠道 1.自渠道 ...

  • MyBatis常用代码集

    一、MyBatis按条件自增 二、MyBatis修改 三、按:年-月查(2021-12) 四、按:年-月-日查(2...

  • Python 自增和语言的设计原理

    Python3 运算符 - 笔记列表 python 没有自增运算符,自增操作是如何实现的。关于自增操作,pytho...

  • C++中自增和自减的实现

    C++中自增和自减符号我们经常使用,了解它的实现方式能够更好的为自己定义的类实现自增和自减。我们首先需要了解一个知...

  • SQLServer常用操作系列一---------表常用操作

    一、自增 二、重命名系列: 三、修改表结构 四、索引与约束 五、统计信息 其它统计信息相关脚本: 六、其它对象

  • Go枚举(一)

    go没有明确意义上的enum定义,不过可以借助iota标识符实现一组自增常量值来实现枚举类型。1.iota自增 输...

  • React 系列 - 写出优雅的路由

    前言 自前端框架风靡以来,路由一词在前端的热度与日俱增,他是几乎所有前端框架的核心功能点。不同于后端,前端的路由往...

网友评论

      本文标题:前端实现一、二、三、四这样的自增

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