JS对货币格式化函数

方法一:保留2位小数

/**

* 将数值四舍五入(保留2位小数)后格式化成金额形式

*

* @param num 数值(Number或者String)

* @return 金额格式的字符串,如'1,234,567.45'

* @type String

*/

export function formatCurrency(num) {

num = num.toString().replace(/[^\d\.-]/g,''); //转成字符串并去掉其中除数字, . 和 - 之外的其它字符。

if(isNaN(num)) num = "0"; //是否非数字值

var sign = (num == (num = Math.abs(num)));

num = Math.floor(num * 100 + 0.50000000001); //下舍入

var cents = num % 100; //求余 余数 = 被除数 - 除数 * 商

cents = (cents < 10) ? "0" + cents : cents; //小于2位数就补齐

num = Math.floor(num / 100).toString();

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);

}

方法二

/**

* 参数说明

* @param s:要格式化的数字

* @param n:保留几位小数

* */

function formatCurrency(s, n) {

n = n > 0 && n <= 20 ? n : 2; //n大于0小于等于20时,值为n,否则默认为2

//将要格式化的数字转换成字符串,并去掉其中匹配的其他字符后返回一个浮点数。

//把 Number 四舍五入为指定位数的数字后,最终在转换成字符串。

s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";

var numArry = s.split("."), //分隔字符串 0 -> 小数点前面数值 1 -> 小数点后面的尾数

l = numArry[0].split("").reverse(), //将前面数值再分隔,并反转顺序

t = "";

for (var i = 0; i < l.length; i++) { //每隔三位小数分始开隔

t += l[i] + ( (i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "" );

}

//将顺序反转回来,并返回一个字符串

return t.split("").reverse().join("") + "." + numArry[1];

}

js金额千分位显示_JavaScript 格式化数字、金额、千分位、保留几位小数相关推荐

  1. el-input 输入框类型;只能输入数字的输入框;保留两位小数输入框;只能输入正整数和0的输入框;手机号正则校验;车牌号码正则校验

    以下代码可直接复制使用: 以下代码可直接复制使用! <template><div><a href="https://baike.baidu.com/item/% ...

  2. 【js】js将数值转为万,亿,万亿并保留两位小数

    export function numberFormat(value) {let param = {}let k = 10000let sizes = ['', '万', '亿', '万亿']let ...

  3. php数字两位小数_PHP数字价格格式化,保留两位小数

    jQuery EasyUI/TopJUI基本的数字输入框(保留两位小数,带前缀后缀...) jQuery EasyUI/TopJUI基本的数字输入框(保留两位小数,带前缀后缀...) numberbo ...

  4. BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)

    一.简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更 ...

  5. php格式化显示8位小数点,PHP保留2位小数 格式化小数、浮点数

    JS保留两位小数例子 四舍五入使用函数 toFixed() document.write(" JS保留两位小数例子 "); var a=2.1512131231231321; do ...

  6. js处理价格数据,每三位加逗号,强制保留两位小数

    需求说明:页面发送请求,需要显示商品的价格,后台从数据库中将价格取出,js处理价格数据,使用金额的标准格式将价格展示在前台. 如下图所示: 数据库存的数据如下: 前台得到的价格数据,如果小数为0的话会 ...

  7. JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去… 及其浮点数计算精度问题(推荐的类库 Numeral.js 和 accounting.js)...

    前端开发中经常会碰到用 JavaScript 格式化数字,最最常见的是格式化金额,一般格式化金额需要千分位分隔,保留2位小数等等. 还有偶然会遇到的使用 js 计算浮点数时出现误差. 完善的功能函数推 ...

  8. html显示千分位及小数位,JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去…...

    JavaScript 格式化数字.金额.千分位.保留几位小数.舍入舍去- 类库推荐 1. Numeral.js 一个用于格式化和操作数字的JavaScript库.数字可以被格式化为货币,百分比,时间, ...

  9. js 通用 保留两位小数 金额千分位格式化

    这是一个系列,记录我前端开发常用的代码,小常识,有些是参考网上代码,(讲的可能有点烂,求不要打脸,嘤嘤嘤~~)送给那些需要的人.可以相互交流,喜欢的加我吧. Wx: Lxp911221 ios 日期 ...

最新文章

  1. flutter 键盘遮挡输入框问题_flutter插件推荐之 keyboard_avoider - 解决输入时的键盘遮挡问题...
  2. rdd分片 spark_Spark分区
  3. 【转】1.8异步编程:.NET 4.5 基于任务的异步编程模型(TAP)
  4. 年轻的程序员怎么快速成为架构师?
  5. Android amr语音编解码解惑 【转http://blog.csdn.net/xyz_lmn/article/category/922246】
  6. p内的a截取字符串,会将a与p的其他内容撑开(IE6、IE7)
  7. QT5开发及实例学习之十二Qt5图像坐标变换
  8. clion导入mysql库_CLion如何添加依赖库 ? 需要把mysql/Connector c++放入 用cpp连接数据库...
  9. python 入门基础-Python入门基础
  10. VS2010/MFC编程入门系列教程
  11. 手机无线上网何时进入战国时代?
  12. C#异步加载数据:BackgroundWorker的使用
  13. 电商项目——商品分类/品牌查询
  14. CNC精雕机加工需要牢记的22个常识,一起来学习
  15. 使用PHP+LibreOffice实现word转html的功能
  16. 截屏、文字提取一气呵成,超实用 OCR 开源小工具
  17. 【KEIL5报错问题】
  18. android.database.sqlite.SQLiteCantOpenDatabaseException: unable to open database file (code 14): , w
  19. 机器学习之二:回归分析
  20. 阿里云(AliCloud)简介

热门文章

  1. JavaScript正则式练习
  2. SPOJ Problem 22:Triangle From Centroid
  3. 数组常见异常 学习笔记
  4. Java多线程(全)学习笔记(上)
  5. SharePoint开发中怎样使用Visual Studio给你的Web Part加入图标
  6. BZOJ.1029.[JSOI2007]建筑抢修(贪心)
  7. Selenium+PhantomJS自动化登录爬取博客文章
  8. linux下合并两个文件夹
  9. EF:oracle的number类型映射为C#的boolean类型
  10. Android实现XML解析技术 (转载http://www.cnblogs.com/hanyonglu/archive/2012/02/28/2370675.html)...