You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript中如何向下取整保留1位小数,即使末尾为0也正常显示?

解决方案

你当前的实现返回的是数字类型,JavaScript 中数字类型的22和22.0存储逻辑完全等价,默认转字符串展示时会自动省略末尾的无意义小数位。要实现固定1位小数展示,只需在原有计算逻辑后追加字符串格式化处理即可。

修改后代码

// 原有向下取整逻辑保持不变,先得到精确的数值结果
const totalPrice = Math.floor(
    (parseFloat(product.price1['regionalPrice'])
      + parseFloat(product.price2['marketPrice'])
      + parseFloat(product.price3['localPrice'])
    ) * 10) / 10;
// 转为固定1位小数的字符串用于页端展示
const displayPrice = totalPrice.toFixed(1);

说明

  • 你原有向下取整的计算逻辑不需要改动,避免出现toFixed默认四舍五入不符合需求的问题
  • 如果你后续需要用总价做其他数值计算,直接使用totalPrice这个数字类型变量即可,displayPrice专门用于页端文本展示
  • 测试验证:22.0会输出为"22.0",22.7312计算后会输出为"22.7",完全符合要求

内容的提问来源于stack exchange,提问作者bourne2077

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 21:45:09