因为在项目中经常遇到对数值保留小数的操作,所以我便将各种处理方式进行抽取整合成一个方法了。
方法名为resultByToFixed,参数包含数值,处理类型,保留几位小数,单位。针对数值做null值判断,条件成立则不做处理。
其中处理类型有以下几种:
0、对数值保留几位小数
1、将数值乘以100后再根据小数位数保留小数
2、在0的基础上添加单位
3、在1的基础上拼接单位输出
最后是将结果返回。
resultByToFixed (num:number, type:number = 0,decimal: number = 0, unit:string = '') { let back; if(num === null){ return; } switch (type) { case 0: back = num.toFixed(decimal); break; case 1: back = (num * 100).toFixed(decimal); break; case 2: back = num.toFixed(decimal) + unit; break; case 3: back = (num * 100).toFixed(decimal) + unit; break; default: back = null; break; } return back; }
下面是对改方法的测试
console.log('aaaa',this.resultByToFixed(0,2,0,'分')) // 0分 console.log('bbbb',this.resultByToFixed(1,3,1,'分')) // 100.0分 console.log('ccccc',this.resultByToFixed(12,2)) // 12
截图菜鸟教程中对toFixed()方法的定义