vue实现数字加逗号分隔

 更新时间:2024年10月16日 09:16:12   作者:Juliet_xmj  
在Vue项目中,对数字进行格式化,实现带小数的数字三位一分隔的效果,可以通过自定义过滤器来实现,使用JavaScript的toLocaleString方法可以方便地将数字转换成带逗号的格式

vue数字加逗号分隔

带小数的数字三位一分隔

filters: {
   num: (val, fix = 2) => {
     if (val !== 0) {
	    val = Number(val) // 字符串转为数字,目标数据为数字可不转
	    val = '' + val.toFixed(2) // 保留两位小数并转为字符串
	    let int = val.slice(0, fix * -1 - 1) // 获取整数
	    let ext = val.slice(fix * -1 - 1) // 获取到小数
	    int = int.split('').reverse().join('') // 翻转整数
	    let temp = '' // 临时变量
	    for (let i = 0; i < int.length; i++) {
	      temp += int[i]
	      if ((i + 1) % 3 === 0 && i !== int.length - 1) {
	        temp += ',' // 每隔3个数字拼接一个逗号
	      }
	    }
	    temp = temp.split('').reverse().join('') // 加完逗号之后翻转
	    temp = temp + ext // 整数小数拼接
	    return temp // 返回
	  } else {
	    return val
	  }
   }
 }

整数三位一分隔

filters: {
   num: (val) => {
     val = '' + val // 转换成字符串
     let int = val
     int = int.split('').reverse().join('') // 翻转整数
     let temp = '' // 临时变量
     for (let i = 0; i < int.length; i++) {
       temp += int[i]
       if ((i + 1) % 3 === 0 && i !== int.length - 1) {
         temp += ',' // 每隔三个数字拼接一个逗号
       }
     }
     temp = temp.split('').reverse().join('') // 加完逗号之后翻转
     return temp // 返回
   }
 }

使用

{{name | num}}

总结

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

相关文章

  • Nginx部署前端Vue项目的完全流程

    Nginx部署前端Vue项目的完全流程

    在前后端分离架构中,vue项目通常需要部署到nginx服务器以实现生产环境运行,这篇文章主要介绍了Nginx部署前端Vue项目的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2026-05-05
  • uni-app进阶使用技巧分享

    uni-app进阶使用技巧分享

    uni-app是一款基于Vue.js的跨平台开发框架,它借助了 Vue.js 的语法和组件化开发思想,本文将详细介绍 uni-app 的全局配置、静态资源管理、路由管理以及数据通信和状态管理的进阶使用技巧,需要的朋友可以参考下
    2023-06-06
  • 关于Vue ui 的没反应、报错问题解决总结

    关于Vue ui 的没反应、报错问题解决总结

    这篇文章主要介绍了关于Vue ui 的没反应、报错问题解决总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • Vue父子组件方法this.$emit()有时候不触发问题及解决

    Vue父子组件方法this.$emit()有时候不触发问题及解决

    这篇文章主要介绍了Vue父子组件方法this.$emit()有时候不触发问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Vue 入口与 initGlobalAPI实例剖析

    Vue 入口与 initGlobalAPI实例剖析

    这篇文章主要为大家介绍了Vue 入口与 initGlobalAPI实例剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • vue项目刷新当前页面的三种方法

    vue项目刷新当前页面的三种方法

    这篇文章主要介绍了vue项目刷新当前页面的三种方法,本文图文并茂给大家介绍的非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-12-12
  • vue3+Element采用递归调用封装导航栏实现

    vue3+Element采用递归调用封装导航栏实现

    本文主要介绍了vue3+Element采用递归调用封装导航栏,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 详解Vue微信授权登录前后端分离较为优雅的解决方案

    详解Vue微信授权登录前后端分离较为优雅的解决方案

    这篇文章主要介绍了详解Vue微信授权登录前后端分离较为优雅的解决方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • vue在.js文件中引入store和router问题

    vue在.js文件中引入store和router问题

    这篇文章主要介绍了vue在.js文件中引入store和router问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • vue+webrtc(腾讯云) 实现直播功能的实践

    vue+webrtc(腾讯云) 实现直播功能的实践

    本文主要介绍了vue+webrtc(腾讯云) 实现直播功能的实践,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11

最新评论