支持的输入类型
decimal.js 的构造函数 Decimal(value) 支持多种类型的输入,以方便灵活地创建高精度数值对象。
1. 数字(Number)
直接传入 JavaScript 的原生数字类型。
const a = new Decimal(0.1);
`
注意:数字类型可能带有原生浮点精度误差,建议对精度要求高的场景慎用。
2. 字符串(String)
推荐使用字符串表示数字,避免浮点数精度问题。
const b = new Decimal('0.1');
const c = new Decimal('123.4567890123456789');
字符串可以是整数、小数、科学计数法等格式。
3. Decimal 实例
可以传入另一个 Decimal 实例,创建该实例的克隆。
const d = new Decimal(a);
这样可以生成一个新的 Decimal 对象,避免引用相同实例。
4. 其他类型
- 不支持直接传入布尔值、对象或数组,否则会抛出错误。
- 可以传入有效的数值字符串,否则会抛出异常。
通过支持多种输入类型,decimal.js 提供了灵活且安全的数值实例创建方式,推荐优先使用字符串输入以确保最大精度。
相关内容
- 为什么需要 decimal.js JavaScript 原生数字类型存在浮点精度问题,导致金融、科学计算等场景出现误差。decimal.js 提供高精度的小数计算支持,解决原生数值缺陷,适合复杂...
- JS 浮点数精度问题示例 介绍 JavaScript 原生浮点数的精度问题,展示常见的计算误差示例及其影响,并引出高精度计算库 decimal.js 作为解决方案。
- decimal.js 的优势 介绍 decimal.js 库在高精度计算中的优势,包括任意精度支持、丰富的运算功能、多种舍入模式和易用的 API 设计。
- 安装方式 介绍如何在不同环境下安装和引入 decimal.js,包括 npm、yarn 和浏览器 CDN,助你快速集成高精度计算功能。
- 基本使用示例 通过简单示例介绍 decimal.js 的基本用法,包括创建实例和进行常见的加减乘除运算。
- decimal.js 与原生 Number 的对比 通过示例对比 decimal.js 和 JavaScript 原生 Number 类型在数值精度和计算准确性方面的差异,说明 decimal.js 的优势。