当前位置:主页 > 网页前端 > vue >

vue金额格式化保留两位小数的实现

时间:2022-07-27 11:15:39 | 栏目:vue | 点击:

金额格式化保留两位小数

Vue.filter("number", function(data) {
    return data.toFixed(2)
})

在需要的地方

{{integralval/100 | number}} 元

自定义过滤器 格式化金额(保留两位小数)

1、js部分 

import Vue from 'vue'

Vue.filter('money', function(val) {
    val = val.toString().replace(/\$|\,/g,'');
    if(isNaN(val)) {
      val = "0";  
    } 
    let sign = (val == (val = Math.abs(val)));
    val = Math.floor(val*100+0.50000000001);
    let cents = val%100;
    val = Math.floor(val/100).toString();
    if(cents<10) {
       cents = "0" + cents
    }
    for (var i = 0; i < Math.floor((val.length-(1+i))/3); i++) {
        val = val.substring(0,val.length-(4*i+3))+',' + val.substring(val.length-(4*i+3));
    }

    return (((sign)?'':'-') + val + '.' + cents);
})

2、html 部分

<template>
 <div id="box">
    <p style="text-align:center;">总金额: {{ this.money | money}}</p>
 </div>

</template>
<script>
import './filter/filter.js'
export default {
  data () {
    return {
      money: 1000000.89
    }
  },
}
</script>

您可能感兴趣的文章:

相关文章