教程 decimaljs tutorial

API 速查表

构造与实例化

方法/属性 说明 示例
new Decimal(value) 创建 Decimal 实例,支持数字、字符串等 new Decimal('123.45')
Decimal.clone() 克隆 decimal.js 类,生成独立版本 const Dec = Decimal.clone();

基本运算方法

方法 功能 示例
.plus(value) 加法 d1.plus(d2)
.minus(value) 减法 d1.minus(d2)
.times(value) 乘法 d1.times(d2)
.div(value) 除法 d1.div(d2)
.pow(value) 幂运算 d1.pow(3)
.sqrt() 平方根 d1.sqrt()

比较与判断

方法 功能 示例
.cmp(value) 比较,返回 -1,0,1 d1.cmp(d2)
.eq(value) 等于 d1.eq(d2)
.lt(value) 小于 d1.lt(d2)
.lte(value) 小于等于 d1.lte(d2)
.gt(value) 大于 d1.gt(d2)
.gte(value) 大于等于 d1.gte(d2)
.isPositive() 是否为正数(含零) d1.isPositive()
.isNegative() 是否为负数 d1.isNegative()
.isZero() 是否为零 d1.isZero()

格式化与转换

方法 功能 示例
.toString() 转字符串 d1.toString()
.toNumber() 转原生数值 d1.toNumber()
.toFixed(dp) 固定小数位数,四舍五入 d1.toFixed(2)
.toDecimalPlaces(dp, rm) 保留小数位,指定舍入模式 d1.toDecimalPlaces(3, Decimal.ROUND_HALF_UP)
.toExponential(dp) 科学计数法字符串 d1.toExponential(2)

全局配置(静态属性和方法)

属性/方法 说明 示例
Decimal.set(config) 设置全局配置,如精度、舍入模式 Decimal.set({ precision: 20 })
Decimal.precision 当前全局精度 Decimal.precision
Decimal.rounding 当前舍入模式 Decimal.rounding

舍入模式常量

常量 说明
Decimal.ROUND_UP 向远离零方向舍入
Decimal.ROUND_DOWN 向零方向舍入
Decimal.ROUND_CEIL 向正无穷方向舍入
Decimal.ROUND_FLOOR 向负无穷方向舍入
Decimal.ROUND_HALF_UP 四舍五入(常用)
Decimal.ROUND_HALF_DOWN 五舍六入
Decimal.ROUND_HALF_EVEN 银行家舍入
Decimal.ROUND_HALF_CEIL 五入
Decimal.ROUND_HALF_FLOOR 五舍六入

该速查表覆盖 decimal.js 常用 API,更多详细功能请参考官方文档。