javascript 实现阿拉伯数字转大写

编写前准备

下面是编写该方法需要用到的关键知识点:

1. charAt(index):可返回指定位置的字符。

2. substr(start, length):返回从一个指定位置开始的指定长度的字符串。

参数:

  • start: 必选项,所需截取字符串的起始位置;

  • length: 可选项,返回字符串包含的字符个数,当length

3. substring(start, end): 返回指定字符串。

参数:

  • start: 指明子字符串的起始位置,该索引从 0 开始起算;

  • end: 指明子字符串的结束位置,该索引从 0 开始起算。

特殊情况:

只包含一个参数,则默认将该参数设为起始位子,返回从该参数起到字符串末尾的字符;

start和end两者之间以较小的作为起始,较大的作为结束,比如a.substring(1, 5)和a.substring(5, 1)返回的字符串相同;

如果start或end为NaN或者负数,则将其置为0。

具体代码

function ToString(n) {

    if (!/^(0|[1-9]d*)(.d+)?$/.test(n)){
        return "数据非法";  //判断数据是否大于0
    }

    var unit = "千百拾亿千百拾万千百拾元角分", str = "";
    n += "00";  

    var indexpoint = n.indexOf('.');  // 如果是小数,截取小数点前面的位数

    if (indexpoint >= 0){

        n = n.substring(0, indexpoint) + n.substr(indexpoint+1, 2);   // 若为小数,截取需要使用的unit单位
    }

    unit = unit.substr(unit.length - n.length);  // 若为整数,截取需要使用的unit单位
    for (var i=0; i 

在线测试

作者昵称: Lichee荔枝

作者邮箱:442070894@qq.com

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
  1. 免费下载或者VIP会员资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
  2. 提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。
  3. 找不到素材资源介绍文章里的示例图片?
    对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
  4. 付款后无法显示下载地址或者无法查看内容?
    如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理
  5. 购买该资源后,可以退款吗?
    源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源

评论(0)

提示:请文明发言