context.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. 'use strict';
  2. const Decimal = require('decimal.js');
  3. // Decimal.set({ precision: 2 });
  4. module.exports = {
  5. // 加法
  6. plus(n1 = 0, n2 = 0) {
  7. const number1 = new Decimal(n1);
  8. const number2 = new Decimal(n2);
  9. const result = number1.add(number2).toFixed(2, Decimal.ROUND_DOWN);
  10. return this.toNumber(result);
  11. },
  12. // 减法
  13. minus(n1 = 0, n2 = 0) {
  14. const number1 = new Decimal(n1);
  15. const number2 = new Decimal(n2);
  16. const result = number1.minus(number2).toFixed(2, Decimal.ROUND_DOWN);
  17. return this.toNumber(result);
  18. },
  19. // 乘法
  20. multiply(n1 = 0, n2 = 0) {
  21. const number1 = new Decimal(n1);
  22. const number2 = new Decimal(n2);
  23. const result = number1.mul(number2).toFixed(2, Decimal.ROUND_DOWN);
  24. return this.toNumber(result);
  25. },
  26. // 除法
  27. divide(n1 = 0, n2 = 0) {
  28. const number1 = new Decimal(n1);
  29. const number2 = new Decimal(n2);
  30. const result = number1.div(number2).toFixed(2, Decimal.ROUND_DOWN);
  31. return this.toNumber(result);
  32. },
  33. toNumber(num) {
  34. return new Decimal(num).toNumber();
  35. },
  36. };