Калькулятор в js для начинающих
let first = 10;
let last = 5;
let op = '*';
let result = first + op + last;
Браузер отказывается умножать , разделять и тд , мне нужно получить в итоге результат в консоле, не используя Array , а цифры и умножение нужно спрашивать prompt ом 3 раза
** то как я пытался **
function getCacl()
{
let firstValue = '';
let op = '';
let lastValue = '';
if(firstValue == ''){
let firstValue = prompt("type number")
if(op == ''){
let op = prompt("type event")
if(lastValue == ''){
let lastValue = prompt("type last number")
let result = (parseInt(firstValue) + op + parseInt(lastValue))
console.log(result );
}
}
}
}
Ответы (2 шт):
Автор решения: Awake
→ Ссылка
Не понимаю, зачем ты вначале функции инициализируешь переменные пустой строкой, а затем их проверяешь. При каждом вызове функции, твои переменные будут становиться пустыми. Можно сократить код тут. Я, конечно, не Senior JS-dev, но, надеюсь, мой вариант тебе поможет.
function getCacl()
{
let firstValue = prompt("type number");
let op = prompt("type event")
let lastValue = prompt("type last number")
let result = 0;
switch(op){
case '+':
result = (parseInt(firstValue) + parseInt(lastValue))
break;
case '-':
result = (parseInt(firstValue) - parseInt(lastValue))
break;
case '*':
result = (parseInt(firstValue) * parseInt(lastValue))
break;
case '/':
result = (parseInt(firstValue) / parseInt(lastValue))
break;
default:
result = "Не введено одно из значений!"
break;
}
console.log(result);
}
Автор решения: ksa
→ Ссылка
мне нужно получить в итоге результат в консоле, не используя Array , а цифры и умножение нужно спрашивать prompt ом 3 раза
Предложу такой вариант решения...
console.log(getCacl());
//
function getCacl() {
const o = {
'+': (a, b) => +a + +b,
'-': (a, b) => a - b,
'*': (a, b) => a * b,
'/': (a, b) => +b ? a / b : 'Деление на 0'
}
let firstValue = prompt("type number");
const op = prompt("type event")
let lastValue = prompt("type last number")
return o[op]?.(firstValue, lastValue) ?? "Не введено одно из значений!"
}