Your task is to create a function that does four basic mathematical operations.
The function should take three arguments - operation(string/char), value1(number), value2(number).
The function should return result of numbers after applying the chosen operation.
Examples
basicOp('+', 4, 7) // Output: 11
basicOp('-', 15, 18) // Output: -3
basicOp('*', 5, 5) // Output: 25
basicOp('/', 49, 7) // Output: 7
function basicOp(operation, value1, value2)
{
if (operation ==='+') return value1 + value2;
if (operation ==='-') return value1 - value2;
if (operation ==='*') return value1 * value2;
if (operation ==='/') return value1 / value2;
return 0;
}
다른 솔루션을 보다가 eval
메소드를 발견했다! 아니 이렇게 간결하게 풀 수가... eval
에 대해서 더 찾아보려다가 mdn에 아주 노랗게 주의 표시가 있었다.
주의: 문자열로부터 eval()을 실행하는 것은 엄청나게 위험합니다. eval()을 사용하면 해커가 위험한 코드를 사용할 수 있습니다. 아래에 eval을 절대 사용하지 말 것!을 확인하세요.
흠 사용하지 말도록 하자.🤨
function basicOp(operation, value1, value2)
{
return eval(value1 + operation + value2);
}
그 밖에 if
와 비슷하게 swith case
로도 풀 수 있다.
function basicOp(operation, value1, value2)
{
switch (operation) {
case('+') : return value1 + value2;
case('-') : return value1 - value2;
case('*') : return value1 * value2;
case('/') : return value1 / value2;
default : return 0;
}
}