• 123输出一百二十三的小案例


    这个也是在脚本之家看到的,感觉挺有意思的;记录一下

    //将130转换成一百三十
    
    var num = 130;
    
    function fn(num) {
        //首先判断是不是数字
        if (!/d+/.test(num)) {
            return '不是数字'
        }
        //中文格式的显示规则;
        var gs = "千百十亿千百十万千百十个"
            //判断数字的长度
        var len = num.toString().length;
        if (len > gs.length) {
            return "数字长度超出范围"
        }
        var res = '';
        var num = num.toString();
        //根据长度截取对应的格式
        var resgs = gs.substr(gs.length - len);
        for (var i = 0; i < len; i++) {
            //console.log(num[i], "len")
            res += '零一二三四五六七八九'.charAt(num[i]) + resgs.charAt(i)
        }
        //去掉末尾的个字
        res = res.substring(0, res.length - 1)
            //考虑特殊情况的比如;零千零万零百替换成零
            //多个零存在只保留一个零
            //零万零亿保留单位万亿
        res = res.replace(/零([十|百|千])/g, "").replace(/零+/g, '').replace(/零([万|亿])/g, "$1")
        console.log(res, "len")
    }
    fn(100000002)

    其实这个案例还是有很多问题的,有些情况不能准确转换

    希望看到的大神,帮我斧正,感激不尽

  • 相关阅读:
    3.4 抓取猫眼电影排行
    2.5 代理的基本原理
    第二章 爬虫基础
    1.8 爬虫框架的安装
    Python序列化
    CVE-2020-1938 Apache-Tomcat-Ajp漏洞复现
    Python定制类
    Apache Tomcat DDOS
    内网端口转发工具
    内网渗透思路简单介绍
  • 原文地址:https://www.cnblogs.com/liliy-w/p/10108771.html
Copyright © 2020-2023  润新知