あなたがQmart === ("E2" || "A2" || "B2" || "D2")
を使用することはできません複数の値をチェックしたい場合は、separatelly各条件をチェックする必要があります。
if ((Qmart === "E2" || Qmart === "A2" || Qmart === "B2" || Qmart === "D2") && linearstatus == "linear") {
} else {
alert("it is an else condition");
}
あなたのコードは、任意のランタイムエラーをスローしなかった理由を尋ねるかもしれません。問題はそのコードです
"E2" || "A2" || "B2" || "D2"
は有効なJavaScriptコードであり、最初の真理値を返します。この機能はshort-circuit evaluationと呼ばれ、JavaScriptで頻繁に使用されます。あなたの場合、上記のステートメントは最初の真理値を返します。これは常に "E2"です。これはあなたのコードが
if (Qmart === "E2" && linearstatus == "linear")
とQmart
がA2
あるとき、その条件がfalse
に評価し、else
文が実行されると同じである、ということを意味しています。次
if ((Qmart === "E2" || Qmart === "A2" || Qmart === "B2" || Qmart === "D2") && (linearstatus == "linear")) {
} else {
alert("it is an else condition");
}
へ
は彼らに一つのすべてのものを比較する、または配列に入れと 'find'または' indexOf'を使用する必要があります。 'if(Qmart ===" E2 "|| Qmart ===" A2 "...){...}' –
"E2" || "A2" || "B2" || "D2" => "E2" – shakib