2017-11-01 7 views
-1

をfullfilledされていないにもかかわらず、私は次のコードを持っていますこれは本当ですか?私は単にこれを理解できません。はJavaScriptをtrueを返す条件が

+1

「==」または「===」を使用します。今、代入演算子を使用しています。 – dev8080

+1

あなたは 'if(usernameExists)'を使うことができます。 –

+0

Ok、同じことを言っている多くの答え!私は何を間違えたのか分かります、ありがとう!私はすぐに回答を受け入れることができないので、私は7分後に回答を受け入れます。 – Cubetastic

答えて

-1

条件には常にtrueが割り当てられます。この値は変数に割り当てられます。これはif句で評価される値です。

しかし、比較値なしで(そしてこの値を割り当てないで)ダイレクトチェックを使用することができます。あなたがそうelseこれ以上は、この場合には起こらない、returnで機能を終了becaue

はそのほかに、あなたは、唯一のif部分にelse一部を変更することができます。

if (usernameExists) { 
    console.log("returning true"); 
    return true; 
} 
if (looped) { 
    console.log(usernameExists+" is returned"); 
    looped = null; 
    return false; 
} 
+1

私はdownvoteしなかった:しかし、答えは実際に最初の問題を説明していません。それは私が厄介なものではありませんが、間違ったコードを残しておいてコメントしました - 私はむしろ答えに残したいと思います。 – Connum

0

条件を確認するには、 '=='演算子を使用する必要があります。 '='は代入演算子を意味します。 一方、 '==='は値とタイプをチェックします。 これが問題ですか。

+0

同じことを言っているので、多くの答え!私は何を間違えたのか分かります、ありがとう! – Cubetastic

0

お客様の条件では、1つの等価物を使用しています! したがって、比較の代わりに行われる割り当て操作です!したがって、あなたの変数が真であることを確認するのではなく、それを本当に割り当てているのです。割り当て操作が成功したので、あなたの条件は同時に満たされます。

2またはツリー=

使用するのではなく、=====に等しく、=====との違いは、ここでは非常によく説明されているとの変更を:

Which equals operator (== vs ===) should be used in JavaScript comparisons?

+0

さて、同じことを言っているので、多くの答え!私は何を間違えたのか分かります、ありがとう! – Cubetastic

1

=は割り当てているので、あなた変数をtrueに設定すると、それ自体がif文をtrueにします。必要なのは、変数がtrueに設定されているかどうかを確認することです。これを行うには、==または===の演算子を使用します。

+1

同じことを言っているので、多くの答え!私は何を間違えたのか分かります、ありがとう! – Cubetastic

関連する問題