使用包含“乘”字符串的变量来乘以其他两个数字

时间:2019-09-26 11:26:05

标签: javascript

我有一个任务,我应该创建3个变量,其中2个将是数字(2,3),第3个将是'*''/'符号字符串。 我需要编写一个函数,该函数将通过仅将3个变量用于结果来返回2*32/3的答案。

我不知道如何使用包含字符串的变量,并使用该字符串执行减法或乘法运算。

function multiply (a , b ,c ) {

}
console.log (multiply(4, (*) , 5 )) ;

我希望结果是4* 54/5

4 个答案:

答案 0 :(得分:1)

将其放在条件和匹配您的符号上

function multiply (a , b ,c ) {
  return c === '*' ? a*b :  a/b
}
console.log (multiply(4,  5, '/' )) ;

希望有帮助

答案 1 :(得分:1)

您正在尝试将运算符作为参数传递给函数,而这在javascript中是不可能的。虽然您仍然可以使用此函数,但是可以使用字符串作为替代。

function multiply(a, b, op) {
  if (op === '*') return a * b;
  if (op === '/') return a / b;
}

console.log(multiply(2, 5, '*')); // should return 10
console.log(multiply(2, 5, '/')); // should return 0.4

答案 2 :(得分:1)

const handlers = {
    '*': (a, b) => { return a * b; },
    '/': (a, b) => { return a / b; },
}

function multiply (a , b ,c ) {
    return handlers[b](a, c);
}

答案 3 :(得分:-2)

const multiply = (num1, num2, calc) => `${num1}${calc}${num2}`


console.log(multiply(1,2,"*"))