如何将JavaScript中的四舍五入函数改写为四舍六入五留双的长尾?

2026-04-06 11:561阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计202个文字,预计阅读时间需要1分钟。

如何将JavaScript中的四舍五入函数改写为四舍六入五留双的长尾?

numFormat.js/** 格式化数字* 参数 arg: 需要格式化的数字* 参数 count: 保留的小数点位数* 返回值: 格式化后的字符串*/function numFormat(arg, count) { if (!isNaN(arg) && count >=0) { var argStr=Number(arg).toString(); if (new RegExp(^\\d+\\.\\d{ + (count + 1) + }$).test(argStr)) { return argStr; } else { return argStr.slice(0, -1); } } return arg.toString();}

numFormat.js

/* * arg 需要四舍六入五留双的数 * count 需要保留的小数点位数 */ function numFormat(arg, count){ if(!isNaN(arg) && count > 0) { var argStr = Number(arg).toString(); if(new RegExp("^\\d+\\.\\d{" + (count + 1) + ",}$").test(argStr)) { //需要修约正则 var tarArg = Number(argStr.substr(0, argStr.length - (argStr.split(".")[1].length - count))); var m = Math.pow(10, count); if(new RegExp("^\\d+\\.\\d{" + count + "}[6-9]\\d*$").test(argStr) || //6入 new RegExp("^\\d+\\.\\d{" + (count - 1) + "}[1|3|5|7|9][5]$").test(argStr) || //5前为奇数 new RegExp("^\\d+\\.\\d{" + count + "}[5]\\d+$").test(argStr)) { //5后有大于0的数 return(tarArg * m + 1) / m; } return(tarArg * m) / m; } } return arg; }

如何将JavaScript中的四舍五入函数改写为四舍六入五留双的长尾?

本文共计202个文字,预计阅读时间需要1分钟。

如何将JavaScript中的四舍五入函数改写为四舍六入五留双的长尾?

numFormat.js/** 格式化数字* 参数 arg: 需要格式化的数字* 参数 count: 保留的小数点位数* 返回值: 格式化后的字符串*/function numFormat(arg, count) { if (!isNaN(arg) && count >=0) { var argStr=Number(arg).toString(); if (new RegExp(^\\d+\\.\\d{ + (count + 1) + }$).test(argStr)) { return argStr; } else { return argStr.slice(0, -1); } } return arg.toString();}

numFormat.js

/* * arg 需要四舍六入五留双的数 * count 需要保留的小数点位数 */ function numFormat(arg, count){ if(!isNaN(arg) && count > 0) { var argStr = Number(arg).toString(); if(new RegExp("^\\d+\\.\\d{" + (count + 1) + ",}$").test(argStr)) { //需要修约正则 var tarArg = Number(argStr.substr(0, argStr.length - (argStr.split(".")[1].length - count))); var m = Math.pow(10, count); if(new RegExp("^\\d+\\.\\d{" + count + "}[6-9]\\d*$").test(argStr) || //6入 new RegExp("^\\d+\\.\\d{" + (count - 1) + "}[1|3|5|7|9][5]$").test(argStr) || //5前为奇数 new RegExp("^\\d+\\.\\d{" + count + "}[5]\\d+$").test(argStr)) { //5后有大于0的数 return(tarArg * m + 1) / m; } return(tarArg * m) / m; } } return arg; }

如何将JavaScript中的四舍五入函数改写为四舍六入五留双的长尾?