js 数字 转换 百 千 万 亿显示

本文介绍了一个JavaScript函数,用于将数字转换为带有合适单位(如千、万、亿等)的字符串形式,便于人类阅读。该函数能够根据输入数字的大小智能选择合适的单位,并进行相应的数值调整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

js 数字 转换 百 千 万 亿显示

var changeUnit = function(value) {
          let newValue = ['', '', ''];
          let fr = 1000;
          const ad = 1;
          let num = 3;
          const fm = 1;
          while (value / fr >= 1) {
            fr *= 10;
            num += 1;
            // console.log('数字', value / fr, 'num:', num);
          }
          if (num <= 4) { // 千
            newValue[1] = '千';
            newValue[0] = parseInt(value / 1000) + '';
          } else if (num <= 8) { // 万
            const text1 = parseInt(num - 4) / 3 > 1 ? '千万' : '万';
            // tslint:disable-next-line:no-shadowed-variable
            const fm = '万' === text1 ? 10000 : 10000000;
            newValue[1] = text1;
            newValue[0] = (value / fm) + '';
          } else if (num <= 16) {// 亿
            let text1 = (num - 8) / 3 > 1 ? '千亿' : '亿';
            text1 = (num - 8) / 4 > 1 ? '万亿' : text1;
            text1 = (num - 8) / 7 > 1 ? '千万亿' : text1;
            // tslint:disable-next-line:no-shadowed-variable
            let fm = 1;
            if ('亿' === text1) {
              fm = 100000000;
            } else if ('千亿' === text1) {
              fm = 100000000000;
            } else if ('万亿' === text1) {
              fm = 1000000000000;
            } else if ('千万亿' === text1) {
              fm = 1000000000000000;
            }
            newValue[1] = text1;
            newValue[0] = parseInt(value / fm) + '';
          }
          if (value < 1000) {
            newValue[1] = '';
            newValue[0] = value + '';
          }
          return newValue.join('');
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值