首页 > 解决方案 > 如果 Javascript 中的点后所有值都为零,则尾随

问题描述

我想在点后删除 0

我在 Laravel 中使用 SQL,在数据库中,价格使用小数(10,3)存储[我需要 3 个小数]。

从我得到的数据库

400.000
451.500
1.522
20.000
300.210
143.100

我尝试过 parseFloat 和 toFixed(3),但它并没有达到我的预期。

我希望输出是:

400
451.500
1.522
20
300.210
143.100

这些值不是来自数组。我从 AJAX 响应中获取价值。我点击一个按钮,我得到 400.000,再次点击.. 我得到响应 451.500,等等。

标签: javascriptregex

解决方案


为简单起见,我将您的值转换为数组,但是如何迭代这些值取决于您;这是概念:

let arr = [400.000, 451.500, 1.522, 20.000, 300.210, 143.100]

    for(let x = 0; x < arr.length; x++) {
        if(arr[x] % 1 == 0) {
            arr[x] = arr[x].toFixed(0);
        }
        else {
            arr[x] = arr[x].toFixed(3);
        }
        console.log(arr[x])
    }

它的作用是检查该值是否可被 1 整除并返回不带任何小数位的值,否则,将其舍入到小数点后 3 位。

希望这有帮助!


推荐阅读