美文网首页
金钱千分位 和反千分位展示

金钱千分位 和反千分位展示

作者: 云高风轻 | 来源:发表于2023-11-29 19:01 被阅读0次

1. 前言

  1. 之前写过一篇文章金额数组转换的 也有提到关于金钱的格式化
  2. 这篇文章在单独写下,金钱/金额的千分位 和反千分位展示

2. 千分位展示

    /*
     * 参数说明:
     * number:要格式化的数字
     * decimals:保留几位小数 ,传0 就不要小数位,是整数
     * dec_point:小数点符号
     * thousands_sep:千分位符号
     * roundtag:舍入参数,默认 "ceil" 向上取,"floor"向下取,"round" 四舍五入
     * */
 const  number_format = (
    number = 0,
    decimals = 2,
    dec_point = ".",
    thousands_sep = ",",
    roundtag = "floor"
  ) =>{
    number = ((number + "").replace(/[^0-9+-Ee.]/g, "") * 1).toFixed(2);
    roundtag = roundtag || "ceil"; //"ceil","floor","round"
    var n = !isFinite(+number) ? 0 : +number,
      prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
      sep = typeof thousands_sep === "undefined" ? "," : thousands_sep,
      dec = typeof dec_point === "undefined" ? "." : dec_point,
      s = "",
      toFixedFix = function (n, prec) {
        var k = Math.pow(10, prec);
        console.log();

        return (
          "" +
          parseFloat(
            Math[roundtag](parseFloat((n * k).toFixed(prec * 2))).toFixed(
              prec * 2
            )
          ) /
            k
        );
      };
    s = (prec ? toFixedFix(n, prec) : "" + Math.round(n)).split(".");
    var re = /(-?\d+)(\d{3})/;
    while (re.test(s[0])) {
      s[0] = s[0].replace(re, "$1" + sep + "$2");
    }

    if ((s[1] || "").length < prec) {
      s[1] = s[1] || "";
      s[1] += new Array(prec - s[1].length + 1).join("0");
    }
    return s.join(dec);
  }

3. 千分位反格式化

  /**
   * @description: 千分位反格式化
   * @param {*} s
   * @return {*}
   */
  const rmoney = (s)=> {
    let str = "";
    if (s) {
      str = String(s).replace(/,/g, "");
    }
    if (s && (s + "").indexOf(".") > -1 && Number(str)) {
      return String(s).replace(/[^\d\.-]/g, "");
    } else if (s && Number(str)) {
      return str;
    } else {
      return s;
    }
  }

参考资料


初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉

相关文章

网友评论

      本文标题:金钱千分位 和反千分位展示

      本文链接:https://www.haomeiwen.com/subject/prefgdtx.html