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

如何在JavaScript中将数字格式化为保留两位小数的字符串?

数字转固定两位小数格式字符串的实现

需求说明

将number类型变量按以下规则转换为字符串:

  • 整数(含0)转换为"XX.00"格式
  • 小数保留两位小数,末尾不足两位补零

示例

  • 输入18(number)→ 输出"18.00"
  • 输入18.1(number)→ 输出"18.10"
  • 输入18.11(number)→ 输出"18.11"

实现方案

方案1:直接使用toFixed(2)

toFixed(2)方法会自动将数字格式化为保留两位小数的字符串,完全匹配需求:

function formatNumber(num) {
  return num.toFixed(2);
}

// 测试用例
console.log(formatNumber(18));    // "18.00"
console.log(formatNumber(18.1));  // "18.10"
console.log(formatNumber(18.11)); // "18.11"

方案2:处理浮点数精度问题

如果遇到浮点数精度异常(如0.1 + 0.2 = 0.30000000000000004),可以先通过取整消除精度误差,再格式化:

function formatNumber(num) {
  return (Math.round(num * 100) / 100).toFixed(2);
}

// 测试精度场景
console.log(formatNumber(0.1 + 0.2)); // "0.30"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 20:22:01