分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

js 格式化数字,格式化金额:

发布时间:2023-09-06 02:04责任编辑:顾先生关键词:js

js 格式化数字,格式化金额:

function number_format(number, decimals, dec_point, thousands_sep) { ???/* ???* 参数说明: ???* number:要格式化的数字 ???* decimals:保留几位小数 ???* dec_point:小数点符号 ???* thousands_sep:千分位符号 ???* */ ???number = (number + ‘‘).replace(/[^0-9+-Ee.]/g, ‘‘); ???var n = !isFinite(+number) ? 0 : +number, ???????prec = !isFinite(+decimals) ? 0 : Math.abs(decimals), ???????sep = (typeof thousands_sep === ‘undefined‘) ? ‘,‘ : thousands_sep, ???????dec = (typeof dec_point === ‘undefined‘) ? ‘.‘ : dec_point, ???????s = ‘‘, ???????toFixedFix = function (n, prec) { ???????????var k = Math.pow(10, prec); ???????????return ‘‘ + Math.ceil(n * k) / k; ???????}; ????s = (prec ? toFixedFix(n, prec) : ‘‘ + Math.round(n)).split(‘.‘); ???var re = /(-?\d+)(\d{3})/; ???while (re.test(s[0])) { ???????s[0] = s[0].replace(re, "$1" + sep + "$2"); ???} ????if ((s[1] || ‘‘).length < prec) { ???????s[1] = s[1] || ‘‘; ???????s[1] += new Array(prec - s[1].length + 1).join(‘0‘); ???} ???return s.join(dec);}

使用效果:

var num=number_format(1234567.089, 2, ".", ",");//1,234,567.09

再来一个,直接舍去的办法:

function number_format(number, decimals, dec_point, thousands_sep) { ???????/* ???????* 参数说明: ???????* number:要格式化的数字 ???????* decimals:保留几位小数 ???????* dec_point:小数点符号 ???????* thousands_sep:千分位符号 ???????* */ ???????number = (number + ‘‘).replace(/[^0-9+-Ee.]/g, ‘‘); ???????var n = !isFinite(+number) ? 0 : +number, ????????????prec = !isFinite(+decimals) ? 0 : Math.abs(decimals), ???????????sep = (typeof thousands_sep === ‘undefined‘) ? ‘,‘ : thousands_sep, ???????????dec = (typeof dec_point === ‘undefined‘) ? ‘.‘ : dec_point, ???????????s = ‘‘, ???????????toFixedFix = function (n, prec) { ???????????????var k = Math.pow(10, prec); ???????????????return ‘‘ + Math.floor(n * k) / k; ???????????}; ???????s = (prec ? toFixedFix(n, prec) : ‘‘ + Math.floor(n)).split(‘.‘); ???????var re = /(-?\d+)(\d{3})/; ???????console.log(s) ???????while (re.test(s[0])) { ???????????s[0] = s[0].replace(re, "$1" + sep + "$2"); ???????} ????????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_format(1234567.089, 2, ".", ",");//1,234,567.08

js 格式化数字,格式化金额:

原文地址:https://www.cnblogs.com/lguow/p/9324380.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved