toFixed的四舍五入改写

Number的toFixed 方法用作四舍五入时候 会因为前一个数字的奇偶而导致 四舍五入并不能达到预期
在项目中 toFixed 一般用于补0和四舍五入 于是根据这两个需求 改写toFixed 如下
 
Number.prototype.toFixed = function(s)
{
  let res = (Math.round(this * Math.pow( 10, s ) )/ Math.pow( 10, s )).toString();
  res.split('.')[1]?'':res+='.'
  res.split('.')[1].length<s? res+=(Math.pow( 10, s- res.split('.')[1].length )+'').substr(1):''
  return res
}
posted @ 2021-09-09 16:37  芬达的碎碎念  阅读(167)  评论(0)    收藏  举报