簡體   English   中英

Javascript 計算器 JS - 切換案例

[英]Javascript Calculator JS - Switch Case

我不明白為什么這個案例不起作用

var a, b;

a = 0;
b = 0


function Calculatrice(a, b, op) {

  switch (op) {

    alert("Choisissez votre opérateur: ");

    case '+':
      return a + b
      break;
    case '-':
      return a - b
      break;
    case '*':
      return a * b
      break;
    case '/':
      return a / b
      break;

      alert("Voici la valeur finale:");
  }

}

Calculatrice(5, 5, +);

我已經查看了您的代碼,這些是對您的代碼所做的更改以獲得正確的結果: 1. 您的 switch 語句之間有懸空警報,這不是必需的。 2. 我刪除了你的全局變量a,b因為在當前函數范圍內不需要。 3. 您應該將操作作為string傳遞,因為這是 switch 語句中所期望的。

這是您的工作代碼。

 function Calculatrice(a, b, op) { switch (op) { case '+': return a + b break; case '-': return a - b break; case '*': return a * b break; case '/': return a / b break; } } console.log(Calculatrice(5, 5, '+'));

 var a, b; a = 0; b = 0 function Calculatrice(a, b, op) { switch (op) { case '+': return a + b case '-': return a - b case '*': return a * b case '/': return a / b default: return "invalid arguments" } } var result = Calculatrice(5, 5, '+'); console.log("Voici la valeur finale: ", result); var result = Calculatrice(5, 5, '-'); console.log("Voici la valeur finale: ", result); var result = Calculatrice(5, 5, '*'); console.log("Voici la valeur finale: ", result); var result = Calculatrice(5, 5, '/'); console.log("Voici la valeur finale: ", result); var result = Calculatrice(5, 5, '%'); console.log("Voici la valeur finale: ", result);

  1. 去除switch體的alert

  2. 調用Calculatrice函數時,使用'+'而不是+

如果你想從用戶那里得到操作符,像這樣使用prompt()

 function Calculatrice(a, b, op) { switch (op) { case '+': return a + b break; case '-': return a - b break; case '*': return a * b break; case '/': return a / b break; } } op = prompt('Choisissez votre opérateur [ + - / * ] :'); var operators = ['+','-','/','*']; if ( operators.indexOf(op) !== -1 ) alert('Voici la valeur finale: ' + Calculatrice(5, 5, op) ) ; else alert("L'opérateur est mal!");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM