跳到主内容
UniKit

科学计数法转换

在普通数字、科学计数法(尾数 × 10^指数)与工程计数法(指数为 3 的倍数)之间互相转换,可指定有效数字位数,并显示尾数、指数、整数性与精度警告。

浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。

数字

三种记法互转:普通数字、科学计数法(尾数 × 10^指数)、工程计数法(指数为 3 的倍数)。

结果

结果

这个工具能做什么

  • 把论文、接口返回或日志里的一串长数字换成科学计数法,避免自己数 0 的时候数错一位。
  • 工程计数法把指数固定成 3 的倍数,正好对应 k、M、G 这些词头,读电容、电阻、频率数值时更直观。
  • 反向使用:拿到 1.2345e-8 这种写法,换算成普通数字确认它到底是几位小数。
  • 核对浮点精度:超出 Number.MAX_SAFE_INTEGER 的整数末尾数字其实已经不准,工具会直接标出来。

示例

输入

123456789

输出

1.23456789e+8(科学计数法);123.456789e+6(工程计数法);123456789(普通数字);123,456,789(千分位)

默认「自动」有效数字位不截断,尾数 1.23456789、指数 8;输入 0.00042 时得到 4.2e-4 与 420e-6。

常见问题

科学计数法和工程计数法差在哪?

科学计数法的尾数固定在 [1, 10),指数任意;工程计数法的指数必须是 3 的倍数,尾数落在 [1, 1000),例如 123456789 在两种记法下分别是 1.23456789e+8 和 123.456789e+6。工程记法的好处是能直接对应 k / M / G 词头。

为什么普通数字有时候变成了 e 记法?

当绝对值 ≥ 1e21 或 < 1e-6 时,JavaScript 的 String(number) 本身就会输出科学计数法,工具沿用同一规则,并在结果里提示「超出普通记法的可读范围」。

有效数字位数该填多少?

留空表示不截断,用最短形式;填 1–15 的整数则按该位数四舍五入,例如填 3 时 123456789 会变成 1.23e+8、123e+6 和 123000000。超过 15 会被拒绝,因为 IEEE 754 双精度浮点最多只能可靠表示 15 位有效数字。

能输入千分位、十六进制或者全角符号吗?

可以。1,234.5(英美写法)、1.234,5(欧洲写法)、1_234、0x1f、0b1010、0o17 都能解析,Unicode 减号(−)也会当成负号。解析不了时直接提示「不是合法的数字」。

输入会被上传吗?

不会。所有解析和换算都在浏览器里用纯 JavaScript 完成,没有网络请求,也没有埋点记录你的输入。

关键词:scientific notationengineering notationexponentmantissasignificant digits科学计数法工程计数法指数尾数有效数字e 记法

同类工具