Decimal.js 如何将整数部分和小数部分分开

Decimal.js how to get integer and fraction part separate

我在 angular 应用程序中使用 decimal.js 灯。

我想通过 Decimal.js.

得到整数和小数部分

例如。输入:123.45 整数:123 十进制:45

对于整数部分,使用 Decimal 内置的 trunc 函数。 对于小数部分,使用 Decimal 内置的负函数减去整个部分(否则你会失去 Decimal 的精度,这正是你想要的)。 Decimal 似乎无需额外代码即可处理负数。

这是一个例子。可以乱用原号来测试各种情况

var x = new Decimal(-123.4533e2);
var msg = 'Original number '+x;
console.log(msg);
msg = 'Whole part is '+Decimal.trunc(x);
console.log(msg);
msg = 'Frac part is '+x.minus(Decimal.trunc(x));
console.log(msg);

或者在上面你可以用 x.trunc()

替换 Decimal.trunc(x)