0
点赞
收藏
分享

微信扫一扫

贝锐蒲公英:快速搭建连锁门店监控体系,赋能企业高效管理

钟罗敏 2023-08-14 阅读 9

 方法1: parseInt + toFixed

/*
* 保留2位小数,不四舍五入
* 5.992550 =>5.99 , 2 => 2.00
* */
const toFixed2Decimal = (value) => {
  return (parseInt(value*100)/100).toFixed(2)
}
console.log(587.67*100)
console.log(toFixed2Decimal(587.67))
console.log(toFixed2Decimal(-0.1123456))
console.log(toFixed2Decimal(-1))
console.log(toFixed2Decimal('-12.999'))
console.log(toFixed2Decimal('-12.99999'))
module.exports = {
  toFixed2Decimal: toFixed2Decimal
}

输出 :

 有问题: 587.67 转换之后 587.66 

方法2:Math.floor + tofixed

const toFixed2Decimal = (value) => {
  return (Math.floor(value*100)/100).toFixed(2)
}

console.log(toFixed2Decimal(-0.1123456))
console.log(toFixed2Decimal(-1))
console.log(toFixed2Decimal('-12.999'))
console.log(toFixed2Decimal('-12.99999'))

输出:

有问题-12.99 得出-13.00 

想哭啊。2种方法出来的钱的值都不对。

举报

相关推荐

0 条评论