教程 decimaljs tutorial

有效数字与指数

decimal.js 提供配置项用于设置有效数字和指数范围,影响数值的计算精度和字符串输出格式。

主要配置项

  • precision
    有效数字的最大位数,决定 Decimal 实例的精度(默认 20)。

  • toExpNeg 和 toExpPos
    控制字符串转换时,何时使用科学计数法表示数字。

    • toExpNeg:当指数小于该值时,使用科学计数法。
    • toExpPos:当指数大于该值时,使用科学计数法。

    默认值分别为 -7 和 21。

配置示例

js
import Decimal from 'decimal.js';

// 设置最大有效数字为 30 位
Decimal.set({ precision: 30 });

// 设置科学计数法显示范围
Decimal.set({ toExpNeg: -5, toExpPos: 10 });

const a = new Decimal('0.00000123');
console.log(a.toString()); // 不使用科学计数法,输出 "0.00000123"

const b = new Decimal('1e+15');
console.log(b.toString()); // 使用科学计数法,输出 "1e+15"

`

说明

  • 通过合理调整 toExpNeg 和 toExpPos,可以控制数值字符串的可读性和简洁性。
  • precision 控制计算的有效数字,数值超出时自动进行舍入。
  • 配置项对全局生效,影响所有 Decimal 实例。

掌握有效数字和指数范围配置,能更好地控制数值的精度和显示效果,满足不同业务场景需求。