Vue封装--如何将数字转换成万

 更新时间:2022年07月31日 09:38:47   作者:小柠檬爱编程  
这篇文章主要介绍了Vue封装--将数字转换成万的实现方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

如何将数字转换成万

后端返回的数字要像下面这样在页面上以万为单位进行显示,为了方便,封装了此方法为笔记,以供以后使用

  // 万转化
  methods:{
      formatDecimal(num, decimal) {
        num = this.fixeds(num * 1)
        num = num.toString();
        let index = num.indexOf(".");
        if (index !== -1) {
          num = num.substring(0, decimal + index + 1);
        } else {
          num = num.substring(0);
        }
        return parseFloat(num).toFixed(decimal);
      },
    }

使用方法

js:

 methods: {
// 升降顺序
   saleamount(row) {
     return this.formatDecimal(Math.abs(row.month_amount * 1 - row.last_month_amount * 1) / 10000, 1)
   },

html:

 <span v-if="saleamount(scope.row) != 0?true:false" style="color:#b3abab">{{saleamount(scope.row)}}万</span>

这是保留自定义小数在main.js中封装的方法,上面的万转化直接调用this.fixeds方法

// 保留自定义小数
Vue.prototype.fixeds = function (num,count) {
  var decimal = 2
  if(count == undefined || count == null){
    decimal = 2
  }else{
    decimal = count
  }
	var numbers = '';
  // 保留几位小数后面添加几个0
  for (var i = 0; i < decimal; i++) {
      numbers += '0';
  }
  var s = 1 + numbers;
  // 如果是整数需要添加后面的0
  var spot = "." + numbers;
  // Math.round四舍五入  
  //  parseFloat() 函数可解析一个字符串,并返回一个浮点数。
  var value = Math.round(parseFloat(num) * s) / s;
  // 从小数点后面进行分割
  var d = value.toString().split(".");
  if (d.length == 1) {
      value = value.toString() + spot;
      return value;
  }
  if (d.length > 1) {
      if (d[1].length < 2) {
          value = value.toString() + "0";
      }
      return value;
  }
}

将大数字单位转化成 万、亿

//将超过万/亿的数字加上万/亿的单位
    getNum() {
      for (let i of this.paymentDiv) {
        //math.floor 就是去除小数点向下取整 math.floor(3.84) = 3
        //x.toString() 就是把x变成字符串
        let num1 = Math.floor(i.today).toString();
        //如果num1长度大于4(num1是万级别的)
        if (num1.length > 4) {
          //如果num1长度大于8(num1是亿级别的)
          if (num1.length > 8) {
            //num1除以1亿再取整得到的数字再加'亿'
            let num2 = Math.floor(num1 / 100000000);
            i.total = num2 + "亿";
          } else {
            //num1除以1亿再取整得到的数字再加'万'
            let num2 = Math.floor(num1 / 10000);
            i.total = num2 + "万";
          }
        }
      }
    },

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

相关文章

  • 使用vue-cli导入Element UI组件的方法

    使用vue-cli导入Element UI组件的方法

    这篇文章给大家介绍了使用vue-cli导入Element UI组件的方法,非常不错,具有一定的参考借鉴价值,需要的朋友一起看看吧
    2018-05-05
  • vue实现百分比占比条效果

    vue实现百分比占比条效果

    这篇文章主要为大家详细介绍了vue实现百分比占比条效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • vue实现简单转盘抽奖功能

    vue实现简单转盘抽奖功能

    这篇文章主要为大家详细介绍了vue实现简单转盘抽奖功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • vue原理Compile从新建实例到结束流程源码

    vue原理Compile从新建实例到结束流程源码

    这篇文章主要为大家介绍了vue原理Compile从新建实例到结束流程源码,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Vue Router4中params传参失效和报错问题的解决方法

    Vue Router4中params传参失效和报错问题的解决方法

    在使用vue-router4中params 进行路由组件之间传参,跳转页面接收不了并报错,本文给大家介绍了Vue Router4中params传参失效和报错问题的解决方法,需要的朋友可以参考下
    2024-03-03
  • Vue-Element-Admin前端接入SSO的方法步骤

    Vue-Element-Admin前端接入SSO的方法步骤

    本文主要介绍了Vue-Element-Admin前端接入SSO的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • vue.js实现的幻灯片功能示例

    vue.js实现的幻灯片功能示例

    这篇文章主要介绍了vue.js实现的幻灯片功能,结合实例形式分析了vue.js实现幻灯片的相关样式、配置、功能等操作技巧,需要的朋友可以参考下
    2019-01-01
  • vue.js 使用v-if v-else发现没有执行解决办法

    vue.js 使用v-if v-else发现没有执行解决办法

    这篇文章主要介绍了vue.js 使用v-if v-else发现没有执行解决办法的相关资料,需要的朋友可以参考下
    2017-05-05
  • vue修改props数据报错的问题及解决

    vue修改props数据报错的问题及解决

    这篇文章主要介绍了vue修改props数据报错的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • vue组件实现首次加载就触发watch

    vue组件实现首次加载就触发watch

    这篇文章主要介绍了vue组件实现首次加载就触发watch方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07

最新评论