Как посчить эти переменные?

304
26 ноября 2016, 17:54
 var a = number; // тут у нас число
 var b = secondnumber; // тут у нас второе число
 var action = '+'; //действие допустим добавление
 var result = a + action + b; // сделаем пример 1 + 1
 console.log(result); //результат выведет нам 1+1, а вместо этого нам нужно 2!

Как можно реализовать именно математическое действие а не просто складывать текст вместе? Тема вроде простая но не могу понять в чем дело, буду благодарен вашей помощи!

Answer 1

Что-то вроде такого

var operation = {
    '+' : function( a, b ) { return a + b; }
};
var a = number; // тут у нас число
var b = secondnumber; // тут у нас второе число
var action = '+'; //действие допустим добавление
var result = operation[action]( a, b ); // сделаем пример 1 + 1
console.log(result); //результат выведет 2

Вот пример страницы с предложенным решением.

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>
    <h1>Test of operation plus</h1>
    <script>
        window.onload = function (firstNumber, secondNumber) {
            var operation =
            {
                "+": function (a, b) { return a + b; }
            };
            var a = firstNumber;
            var b = secondNumber;
            var action = "+";
            var result = operation[action](a, b);
            alert(result);
        }(1, 2);
    </script>
</body>
</html>

В alert выводит число 3.

READ ALSO
Вывод результата JavaScript

Вывод результата JavaScript

Начал изучение JSСтолкнулся с проблемой, что результат который должен выводить JS не отображается

307
Как извлечь URL страницы в BIRT report

Как извлечь URL страницы в BIRT report

Проблема заключается в отсутствии многих Native JavaScript Functions

305
Ошибка при попытке выполнить grunt build c node v.7.0.0 и npm v.4.0.2

Ошибка при попытке выполнить grunt build c node v.7.0.0 и npm v.4.0.2

При попытке выполнить grunt build вылетает следующая ошибка:

509