js格式化金额可选是否带千分位以及保留精度


Posted in Javascript onJanuary 28, 2014

js格式化金额,可选是否带千分位,可选保留精度,也是网上搜到的,但是使用没问题

/* 
将数值四舍五入后格式化. 
@param num 数值(Number或者String) 
@param cent 要保留的小数位(Number) 
@param isThousand 是否需要千分位 0:不需要,1:需要(数值类型); 
@return 格式的字符串,如'1,234,567.45' 
@type String 
*/ 
function formatNumber(num,cent,isThousand){ 
num = num.toString().replace(/\$|\,/g,''); 
if(isNaN(num))//检查传入数值为数值类型. 
num = "0"; 
if(isNaN(cent))//确保传入小数位为数值型数值. 
cent = 0; 
cent = parseInt(cent); 
cent = Math.abs(cent);//求出小数位数,确保为正整数. 
if(isNaN(isThousand))//确保传入是否需要千分位为数值类型. 
isThousand = 0; 
isThousand = parseInt(isThousand); 
if(isThousand < 0) 
isThousand = 0; 
if(isThousand >=1) //确保传入的数值只为0或1 
isThousand = 1; 
sign = (num == (num = Math.abs(num)));//获取符号(正/负数) 
//Math.floor:返回小于等于其数值参数的最大整数 
num = Math.floor(num*Math.pow(10,cent)+0.50000000001);//把指定的小数位先转换成整数.多余的小数位四舍五入. 
cents = num%Math.pow(10,cent); //求出小数位数值. 
num = Math.floor(num/Math.pow(10,cent)).toString();//求出整数位数值. 
cents = cents.toString();//把小数位转换成字符串,以便求小数位长度. 
while(cents.length<cent){//补足小数位到指定的位数. 
cents = "0" + cents; 
} 
if(isThousand == 0) //不需要千分位符. 
return (((sign)?'':'-') + num + '.' + cents); 
//对整数部分进行千分位格式化. 
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) 
num = num.substring(0,num.length-(4*i+3))+','+ 
num.substring(num.length-(4*i+3)); 
return (((sign)?'':'-') + num + '.' + cents); 
}
Javascript 相关文章推荐
jQuery 页面载入进度条实现代码
Feb 08 Javascript
两种常用的javascript数组去重方法思路及代码
Mar 26 Javascript
深入解析JavaScript的闭包机制
Oct 20 Javascript
js实现分割上传大文件
Mar 09 Javascript
js自定义select下拉框美化特效
May 12 Javascript
关于在mongoose中填充外键的方法详解
Aug 14 Javascript
node.js中http模块和url模块的简单介绍
Oct 06 Javascript
Postman模拟发送带token的请求方法
Mar 31 Javascript
微信小程序:数据存储、传值、取值详解
May 07 Javascript
javaScript把其它类型转换为Number类型
Oct 13 Javascript
node解析修改nginx配置文件操作实例分析
Nov 06 Javascript
Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)
Nov 05 Javascript
js关于精确计算和数值格式化以及直接引js文件
Jan 28 #Javascript
键盘上一张下一张兼容IE/google/firefox等浏览器
Jan 28 #Javascript
调用innerHTML之后onclick失效问题的解决方法
Jan 28 #Javascript
JS判断两个时间大小的示例代码
Jan 28 #Javascript
js jquery ajax的几种用法总结(及优缺点介绍)
Jan 28 #Javascript
js中哈希表的几种用法总结
Jan 28 #Javascript
js日期对象兼容性的处理方法
Jan 28 #Javascript
You might like
php动态生成JavaScript代码
2009/03/09 PHP
网站用php实现paypal整合方法
2010/11/28 PHP
php设计模式 Prototype (原型模式)代码
2011/06/26 PHP
用PHP提取中英文词语以及数字的首字母的方法介绍
2013/04/23 PHP
深入密码加salt原理的分析
2013/06/06 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
2016/01/05 PHP
PHP二进制与字符串之间的相互转换教程
2016/10/14 PHP
PHP实现简易blog的制作
2016/10/24 PHP
PHP+原生态ajax实现的省市联动功能详解
2017/08/15 PHP
前端开发必须知道的JS之原型和继承
2010/07/06 Javascript
点击页面其它地方隐藏该div的两种思路
2013/11/18 Javascript
jQuery实现单击按钮遮罩弹出对话框(仿天猫的删除对话框)
2014/04/10 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
javascript解决IE6下hover问题的方法
2015/07/28 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
弹出遮罩层后禁止滚动效果【实现代码】
2016/04/29 Javascript
JavaScript时间戳与时间日期间相互转换
2017/12/11 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
浅谈Angular HttpClient简单入门
2018/05/04 Javascript
简述JS浏览器的三种弹窗
2018/07/15 Javascript
jquery获取元素到屏幕四周可视距离的方法
2018/09/05 jQuery
Python原始字符串(raw strings)用法实例
2014/10/13 Python
Python单例模式实例详解
2017/03/01 Python
Python简单读取json文件功能示例
2017/11/30 Python
Python3中详解fabfile的编写
2018/06/24 Python
python3转换code128条形码的方法
2019/04/17 Python
Python常用模块sys,os,time,random功能与用法实例分析
2020/01/07 Python
python实现ping命令小程序
2020/12/28 Python
刚毕业大学生自荐信范文
2014/02/20 职场文书
内蒙古鄂尔多斯市市长寄语
2014/04/10 职场文书
低碳环保口号
2014/06/12 职场文书
意向书范本
2014/07/29 职场文书
党的群众路线教育实践活动总结材料
2014/10/30 职场文书
2014年社区综治工作总结
2014/11/17 职场文书
学生检讨书范文
2015/01/27 职场文书
2015年派出所民警工作总结
2015/04/24 职场文书