因为在项目中经常遇到对数值保留小数的操作,所以我便将各种处理方式进行抽取整合成一个方法了。

方法名为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()方法的定义

posted on 2021-03-29 10:27  羽丫头不乖  阅读(428)  评论(0编辑  收藏  举报