当前位置: 代码网 > it编程>编程语言>Javascript > Vue前端数值转换为千分位格式并保留两位小数代码示例

Vue前端数值转换为千分位格式并保留两位小数代码示例

2024年07月03日 Javascript 我要评论
1.前端使用elg-pro-table 数据表格:<elg-pro-table class="custom-card" ref="table"

1.前端使用elg-pro-table 数据表格:

<elg-pro-table
          class="custom-card"
          ref="table"
          :datasource="url"
          :columns="columns"
          :where="where"
          :border="true"
          :toolkit="[]"
          toolbar
          :loading="loading"
        >
</elg-pro-table>

2.其中使用是columns表格:

 // 表格列配置
 columns: [
        {
          prop: 'voucherno',
          label: '凭证号',
          showoverflowtooltip: true,
          minwidth: 100 ,
          classname: 'texttype'
        },
        {
          prop: 'originalcurrencydebit',
          label: '借方金额',
          showoverflowtooltip: true,
          minwidth: 120,
          classname: 'moneytype',
          formatter:  (value) => {//使用formatter,其中value是整个columns中的一行数据
              //value.originalcurrencydebit和上面的prop的内容一致
              return commonapi.changemoney(value.originalcurrencydebit);
          }
        },
],

3.其中commonapi.changemoney()方法是引用的一个api方法:

//数值转换
changemoney(value){
   if(value === ""){//当value为空时,前台显示-
         return '-'
   }else{
//当value等于0或者是字符串0时,显示-
        if ("0.00"===value || "0"===value || value ===0 || value ===0.00) {
           return '-'
        }else{
//判断一个变量value是否小于0。如果value小于0,那么isnegative的值就是true,否则就是false。
   let isnegative = value < 0;
//下面一行代码是将一个数值value转换为千分位格式的字符串,并保留两位小数。具体步骤如下:
 //1.使用math.abs(value)函数获取value的绝对值,确保结果为正数。
 //2.使用parsefloat()函数将绝对值转换为浮点数类型。
 //3.使用tofixed(2)方法将浮点数保留两位小数。
 //4.使用正则表达式/\d(?=(\d{3})+\.)/g匹配小数点前的每三位数字,并在其前面添加逗号分隔符。
 //5.最终得到的结果存储在变量result中。
 let result = parsefloat(math.abs(value)).tofixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
        if (isnegative) {//当isnegative是false时,下面的数据加上-,
            result = '-' + result;
         }
         return  result
        }
    }
},

至此结束。

style小贴士:

<style>
        /* 默认居中 */
  .custom-card .el-table__body td {
      text-align: center;
  }
  /* 金额类居右 */
  .custom-card .el-table__body td.moneytype {
      text-align: right;
  }
  /* 文本类居左 */
  .custom-card .el-table__body td.texttype {
      text-align: left;
  }
</style>

总结 

到此这篇关于vue前端数值转换为千分位格式并保留两位小数的文章就介绍到这了,更多相关vue数值转换千分位保留小数内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com