Vue自定义过滤器格式化数字三位加一逗号实现代码


Posted in Javascript onMarch 23, 2018

前端处理一些金额,数字类的数据要求按照固定的格式显示,比如9,527,025,或者带有小数(如1,587.23)仍要三位一断。有些话也不必多说,既然要求如此,实现呗。

Vue自定义过滤器格式化数字三位加一逗号实现代码

作为前端主流框架之一的Vue,类似的功能肯定都有人写的很完善了。我呢,最讨厌不动脑筋去网上找现成的,所以我自己写了一个。话不多说,先放效果图再贴代码(为了展现思路,我面向过程写的,另外这个是针对保留两位小数的数字进行过滤,因为保留整数的太简单了)。

Vue自定义过滤器格式化数字三位加一逗号实现代码

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <meta http-equiv="Content-Type" content="text/html">
  <title>Vue数字过滤器逢三一断</title>
 </head>
 <body>
  <div id="app">
   <h4>说明:这个版本是针对保留两位小数的浮点数进行过滤格式化的</h4>
   <input type="number" v-model="num" />
   <p>{{num|NumFormat}}</p>
  </div>
 </body>
 <script type="text/javascript" src="vue.js"></script>
 <script>
  Vue.filter('NumFormat', function(value) {
   if(!value) return '0.00';
   var intPart = Number(value).toFixed(0); //获取整数部分
   var intPartFormat = intPart.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,'); //将整数部分逢三一断
   var floatPart = ".00"; //预定义小数部分
   var value2Array = value.split(".");
   //=2表示数据有小数位
   if(value2Array.length == 2) {
    floatPart = value2Array[1].toString(); //拿到小数部分
    if(floatPart.length == 1) { //补0,实际上用不着
     return intPartFormat + "." + floatPart + '0';
    } else {
     return intPartFormat + "." + floatPart;
    }
   } else {
    return intPartFormat + floatPart;
   }
  })
  var app = new Vue({
   el: "#app",
   data: {
    num: 0
   },
  })
 </script>
</html>

总结

以上所述是小编给大家介绍的Vue自定义过滤器格式化数字三位加一逗号实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
正则表达式语法
Oct 09 Javascript
网站页面自动跳转实现方法PHP、JSP(上)
Aug 01 Javascript
JS图片等比例缩放方法完整示例
Aug 03 Javascript
js判断文件格式及大小的简单实例(必看)
Oct 11 Javascript
javaScript实现滚动条事件详解
Mar 24 Javascript
AngularJs ng-change事件/指令的用法小结
Nov 01 Javascript
使用vue点击li,获取当前点击li父辈元素的属性值方法
Sep 12 Javascript
通过循环优化 JavaScript 程序
Jun 24 Javascript
从零搭一个自用的前端脚手架的方法步骤
Sep 23 Javascript
Node.js API详解之 string_decoder用法实例分析
Apr 29 Javascript
微信小程序之导航滑块视图容器功能的实现代码(简单两步)
Jun 19 Javascript
js实现筛选功能
Nov 24 Javascript
JavaScript 五大常见函数
Mar 23 #Javascript
JS中原始值和引用值的储存方式示例详解
Mar 23 #Javascript
剖析Angular Component的源码示例
Mar 23 #Javascript
vue利用axios来完成数据的交互
Mar 23 #Javascript
JS动画定时器知识总结
Mar 23 #Javascript
p5.js 毕达哥拉斯树的实现代码
Mar 23 #Javascript
轻量级JS Cookie插件js-cookie的使用方法
Mar 22 #Javascript
You might like
松下Panasonic RF-B65电路分析
2021/03/02 无线电
PHP 七大优势分析
2009/06/23 PHP
PHP CLI模式下的多进程应用分析
2013/06/03 PHP
php中的字符编码转换函数用法示例
2014/10/20 PHP
php解决安全问题的方法实例
2019/09/19 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
JavaScript入门教程(10) 认识其他对象
2009/01/31 Javascript
javascript(jquery)利用函数修改全局变量的代码
2009/11/02 Javascript
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
全面解析node 表单的图片上传
2016/11/21 Javascript
详解vue-router2.0动态路由获取参数
2017/06/14 Javascript
node文字生成图片的示例代码
2017/10/26 Javascript
Angular2+如何去除url中的#号详解
2017/12/20 Javascript
vue项目中将element-ui table表格写成组件的实现代码
2019/06/12 Javascript
[11:12]2018DOTA2国际邀请赛寻真——绿色长城OpTic
2018/08/10 DOTA
linux下安装easy_install的方法
2013/02/10 Python
python字典排序实例详解
2015/05/20 Python
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
python MysqlDb模块安装及其使用详解
2018/02/23 Python
Python实现的括号匹配判断功能示例
2018/08/25 Python
pyqt实现.ui文件批量转换为对应.py文件脚本
2019/06/19 Python
使用django和vue进行数据交互的方法步骤
2019/11/11 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
深入分析python 排序
2020/08/24 Python
css3 伪元素和伪类选择器详解
2014/09/04 HTML / CSS
加拿大廉价机票预订网站:CheapOair.ca
2018/03/04 全球购物
Godiva巧克力英国官网:比利时歌帝梵巧克力
2018/08/28 全球购物
公司经理聘任书
2014/03/29 职场文书
学生期末评语大全
2014/04/30 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
精彩的演讲稿开头
2014/05/08 职场文书
大学奖学金获奖感言
2014/08/15 职场文书
海上钢琴师观后感
2015/06/03 职场文书
薪资证明范本
2015/06/19 职场文书
Python实现的扫码工具居然这么好用!
2021/06/07 Python