-4

三項演算子を使用していますが、少し助けが必要です。単純な if-else ステートメントを変換していますが、理解できない単純な構文エラーがあります。私はコード アカデミーで演習を行っていますが、最初の行が未定義であるというエラーが表示されます。元のコードは次のとおりです。

if (food === "taco") {
  foodType = "Mexican";
} else {
  foodType = "other";  
}

これは私のコードです。この最初の行は未定義ですが、その方法がわかりません。

var food = prompt("Food type");
var food === "taco" ? "Mexican": "other";
4

3 に答える 3

7

あなたが意図したことは次のとおりだと思います。

foodType = (food === "taco") ? "Mexican": "other"
                   ^condition       ^true    ^false

MDN: 条件演算子

于 2012-10-29T05:46:29.840 に答える
1

三項構文は次のようになります。

variableToBeSet = (condition) ? trueValue : falseValue;

あなたの問題では、

foodtype = (food === "taco") ? "Mexican": "other";
于 2012-10-29T05:47:10.167 に答える
0

ブール式? 値 1 : 値 2

たとえば、次の if..then..else ステートメント

boolean isSmiley = true;

 String mood = "";

 if (isSmiley == true)
 {
   mood = "I'm Happy!";
 }
 else
 {
   mood = "I'm Sad!";
 }

これで、以下のように三項オプションを使用できます

 boolean isSmiley = true;
 String mood = (isSmiley == true)?"I'm Happy!":"I'm Sad!"; 
于 2012-10-29T05:49:56.707 に答える