JavaScript中将金钱格式化
来源:互联网 发布:法院网络司法拍卖平台 编辑:程序博客网 时间:2024/04/28 19:38
JavaScript中将金钱格式化,三位一加逗号。
formatMyCurrency=function(number, decimals, spliter, dot) {number = (number + '').replace(/[^0-9+\-Ee.]/g, '');var n = !isFinite(+number) ? 0 : +number;//判断是否是无穷数,不是无穷数n赋值为0var prec = !isFinite(+decimals) ? 0: Math.abs(decimals);var sep = (typeof spliter === 'undefined') ? ',': spliter;var dec = (typeof dot === 'undefined') ? '.': dot;var s = '';var toFixedFix = function(n, prec) {var k = Math.pow(10, prec);return '' + Math.round(n * k) / k;};s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');if (s[0].length > 3) {s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);}if ((s[1] || '').length < prec) {s[1] = s[1] || '';s[1] += new Array(prec - s[1].length + 1).join('0');}return s.join(dec);}
number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
1、为什么number要+‘’ ?因为replace只处理string,所以number + ''将number强转成字符串。
2、replace(/[^0-9+\-Ee.]/g, '') 这个正则表达式的意思是过滤0-9以及E和e除了这些全转成空。
var n = !isFinite(+number) ? 0 : +number;
3、isFinite函数是判断参数是否是无穷数的。number前有一个加号,这个加号是为了防止number是undifind的,如果是underfind则number会被转换成NaN,如果不判断则会发生异常。
var prec = !isFinite(+decimals) ? 0: Math.abs(decimals);
4、不理解为什么要写这个?
var sep = (typeof spliter === 'undefined') ? ',': spliter;
5、这行代码定义了分割方式,默认是逗号
var dec = (typeof dot === 'undefined') ? '.': dot;
6、我猜测这行代码是小数点....
var k = Math.pow(10, prec);
7、Math.pow 返回数字 x 的 y 次幂。
Math.round() 我们数学中常用到的四舍五入取整。
0 0
- JavaScript中将金钱格式化
- 金钱格式化
- php格式化金钱函数
- jquery 金钱格式化
- PHP格式化金钱函数
- iOS 金钱格式化
- java金钱格式化
- java格式化数字、货币、金钱
- js,正则实现金钱格式化
- struts2 全局格式化,格式化时间,金钱,数字
- android中将时间格式化
- fmt 对 字符串 时间 金钱 的格式化
- 安卓支付时金钱格式化问题。
- js中将系统时间格式化
- 金钱
- jquery 格式化 日期时间格式/ 金钱or百分比 格式
- jquery 格式化 日期时间格式/ 金钱or百分比 格式
- c# 表示格式化金钱(千位)显示方式... 例如..2,444,444,444
- 今日BBC
- 测试
- iOS开发 - 打开文件后进行文件分享(QLPreviewController)
- Android小记:开发实战经验总结
- 一些论文阅读的日常记录
- JavaScript中将金钱格式化
- MQ、JMS以及ActiveMQ 关系的理解
- 机器学习基础(二十八) —— 数据规格化
- Entity FrameWork +.NET MVC+ EasyUI 之 List<>集合类转为DataTable
- 毕婚感言
- Caffe学习之一:Caffe的配置和编译
- oracle :time_t 转换timestamp
- 用open或showModalDialog实现父子页面传值
- struts2中Action的学习