码迷,mamicode.com
首页 > 其他好文 > 详细

对利率添加百分比,并保留几位小数

时间:2020-07-26 01:49:39      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:左右   formatter   Matter   nan   turn   javascrip   避免   获取   数据类型   

/**
   * @description: 对利率添加百分号
   * @param {type} {1.2300000,4}
   * @return: 1.2300%
   */
  function rateFormatter(param, num) {
    // 过滤掉%
    // 统一转化为字符串并去掉左右空格 为了避免异常数据
    param = param.toString().trim();
    // 去掉引号转义符
    param = param.replace(/["]/g, ‘‘);
    /* 第一个百分号出现的角标 */
    let firstIndex = param.indexOf(‘%‘);
    /* 以百分号结尾 */
    if (firstIndex === param.length - 1) {
      param = param.substring(0, param.length - 1);
    }
    /* 首先判断该字符串可以转成数据类型 */
    if (!isNaN(param)) {
      /* 获取小数‘.‘号出现的角标 */
      let index = param.indexOf(‘.‘);
      /* 小数点后面位数超过要保留的位数 */
      if (index !== -1 && param.slice(index + 1).length >= num) {
        /* 采用字符串截断 */
        param = param.substring(0, index + num + 1);
      }
      /* 没有小数点 或 小数点后位数补足 */
      else {
        /* 没有小数点时补小数点 */
        if (index === -1) {
          index = param.length;
          param = param + ‘.‘;
        }
        /* 缺几位小数就补几位 */
        while (param.length <= index + num) {
          param += ‘0‘;
        }
      }
    }
    return param + ‘%‘;
  }
  console.log(rateFormatter(12.3451, 2))

  

对利率添加百分比,并保留几位小数

标签:左右   formatter   Matter   nan   turn   javascrip   避免   获取   数据类型   

原文地址:https://www.cnblogs.com/qinyuanchun/p/13378500.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!