时间:2021-05-26
前端处理一些金额,数字类的数据要求按照固定的格式显示,比如9,527,025,或者带有小数(如1,587.23)仍要三位一断。有些话也不必多说,既然要求如此,实现呗。
作为前端主流框架之一的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自定义过滤器格式化数字三位加一逗号实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
vue2.0已经废弃了过滤器,需要自定义过滤器,用于一些常见的文本格式化。感觉超级好用!!过滤器可以用在两个地方:双花括号插值和v-bind表达式。过滤器应该被
过滤器1.过滤器规则Vue.js允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值{{}}和v-bind表达式(后者从2.1
Vue允许自定义过滤器可被用作一些常见的文本格式化过滤器可以用在两个地方:mustache插值表达式和v-bind表达式过滤器应被添加在JavaScript表达
php实现数字格式化,数字每三位加逗号的功能函数,具体代码如下:functionnum_format($num){if(!is_numeric($num)){r
一自定义过滤器(注册在Vue全局)注意事项:(1)全局方法Vue.filter()注册一个自定义过滤器,必须放在Vue实例化前面(2)过滤器函数始终以表达式的值