Для целочисленной части используйте функцию усечения, встроенную в десятичную.Для дробной части вычтите всю часть с помощью функции минус, встроенной в десятичную (иначе вы потеряете точность десятичной дроби, которая была тем, что вы хотели получить).Появляется десятичная дробь для обработки отрицательных чисел без дополнительного кода.
Вот пример.Вы можете связываться с исходным номером для проверки различных случаев.
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);
или в вышеупомянутом вы можете заменить Decimal.trunc(x)
на x.trunc()