我有以下内容:
import { BigNumber } from "@ethersproject/bignumber";
import { parseUnits } from "@ethersproject/units";
const decimals = 18;
export const add = (a: string, b: string): string => {
const _a = parseUnits(a, decimals);
console.log(_a.toString(), a);
const _b = BigNumber.from(b);
const res = _a.add(_b).toString();
return res;
};
// a = 123456789123456789.123456789123456789
// b = 1
// _a.toString() = 123456789123456789123456789123456789
// res = 123456789123456789123456789123456790
我是否遗漏了一些明显的东西,为什么res
不计算为“123456789123456790.123456789123456789”?
即使我不通过decimals
,它仍然是相同的结果。(理想情况下,我不想指定实际的小数值)