动态控制小数点位数

不废话上代码

/**
 * @desc 根据传入的num值来确定value的小数点位数
 * @params {Number|String} value - 参数value为输入框的值
 * @params {num} Number - 参数num为小数的位数
 * @returns {String|Number} 返回处理后的值
 */
const limitDecimals = (value, num) => {
  let reg = new RegExp('^(\\-)*(\\d+)\\.(\\d{' + num + '}).*$');
  if (typeof value === 'string') {
    return !isNaN(Number(value)) ? value.replace(reg, '$1$2.$3') : '';
  } else if (typeof value === 'number') {
    return !isNaN(value) ? String(value).replace(reg, '$1$2.$3') : '';
  } else {
    return '';
  }
};

正则表达式插入变量注意点:

1、需要用new RegExp()来创建正在表达式。
2、两侧的"/"需要去除。
3、当中的转义字符需要用"\\"。
4、变量用字符串拼接就行。

更多推荐

正则表达式插入变量