NumCalculator.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
  8. var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
  9. var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
  10. var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
  11. var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
  12. var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
  13. var _calculator = _interopRequireDefault(require("./calculator"));
  14. var NumCalculator = /*#__PURE__*/function (_AbstractCalculator) {
  15. (0, _inherits2.default)(NumCalculator, _AbstractCalculator);
  16. var _super = (0, _createSuper2.default)(NumCalculator);
  17. function NumCalculator(num) {
  18. var _this;
  19. (0, _classCallCheck2.default)(this, NumCalculator);
  20. _this = _super.call(this);
  21. (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "result", 0);
  22. if (num instanceof NumCalculator) {
  23. _this.result = num.result;
  24. } else if (typeof num === 'number') {
  25. _this.result = num;
  26. }
  27. return _this;
  28. }
  29. (0, _createClass2.default)(NumCalculator, [{
  30. key: "add",
  31. value: function add(num) {
  32. if (num instanceof NumCalculator) {
  33. this.result += num.result;
  34. } else if (typeof num === 'number') {
  35. this.result += num;
  36. }
  37. return this;
  38. }
  39. }, {
  40. key: "sub",
  41. value: function sub(num) {
  42. if (num instanceof NumCalculator) {
  43. this.result -= num.result;
  44. } else if (typeof num === 'number') {
  45. this.result -= num;
  46. }
  47. return this;
  48. }
  49. }, {
  50. key: "mul",
  51. value: function mul(num) {
  52. if (num instanceof NumCalculator) {
  53. this.result *= num.result;
  54. } else if (typeof num === 'number') {
  55. this.result *= num;
  56. }
  57. return this;
  58. }
  59. }, {
  60. key: "div",
  61. value: function div(num) {
  62. if (num instanceof NumCalculator) {
  63. this.result /= num.result;
  64. } else if (typeof num === 'number') {
  65. this.result /= num;
  66. }
  67. return this;
  68. }
  69. }, {
  70. key: "equal",
  71. value: function equal() {
  72. return this.result;
  73. }
  74. }]);
  75. return NumCalculator;
  76. }(_calculator.default);
  77. var _default = exports.default = NumCalculator;