Выражение сложение - тип СТРОКА. Надо преобразовать в число

Рейтинг: 0Ответов: 1Опубликовано: 30.03.2023

Есть функция:

function calculator(string) {}

Параметр функции строка. Аргументом выступает например: '1 + 2'. Надо, что бы функция возвращала результат операции. Прохожу циклом по строке, сохраняю операнды. Но что делать со знаком сложения? Как мне сохранять его, что бы в последствии использовать его по его же назначению? Знак сохраняется как строка и в итоге получаю NaN.

Ответы

▲ 0

Нашел решение.

function calculator(string) {
  let operands = string.split(' ');
  let num1 = parseInt(operands[0]);
  let num2 = parseInt(operands[2]);
  let operator = operands[1];

  let operators = {
    '+': function(num1, num2) { return num1 + num2 },
    '-': function(num1, num2) { return num1 - num2 },
    '*': function(num1, num2) { return num1 * num2 },
    '/': function(num1, num2) { return num1 / num2 }
  };