2012-01-09 1 views
2

JavaScriptのIF文で条件としてブール値を持つ変数を使用するにはどうすればよいですか?JavaScriptのIF文で条件としてブール値を持つ変数を使用するにはどうすればよいですか?

patt1 = new RegExp ("time"); 

var searchResult = (patt1.test("what time is it")); // search for the word time in the string 
               // and return true or false 

If (searchResult = true) // what is the right syntax for the condition? 
{ 
    document.write("Word is in the statement"); 
    document.write("<br />"); 
} 
+0

(、検索結果が) –

+0

あなたが「条件」としてのみ変数を使用することができれば:=演算子は、JavaとJScriptで割り当てになるため動作しません= 1を使用して、 '(、検索結果)であれば、'、その構文を使用したい場合は 'if(searchResult == true)'を使うべきです – jere

答えて

2
if (searchResult == true) { 
... 
} 

これはテストです。

ショートバージョン:

if (searchResult) { 
... 
} 
3

単純に直接値を使用して、それがtruthyだかどうJavascriptが決定されます。

if (searchResult) { 
    // It's truthy 
    ... 
} 

オリジナルサンプルの問題は、searchResult = trueを使用していることです。これは簡単な条件チェックではなく、結果として条件付きとしてチェックされる値をもたらす代入です。それは=オペレータが、これはこれがために使用されている割り当て

  • ==のために使用されている方法

    • =の数で使用することができ、JavaScriptで次

      searchResult = true; 
      if (true) { 
          ... 
      } 
      

      を言うのおおよそ同等です強制による等価チェック

    • ===これは完全一致チェックのために使用されます
  • +0

    ここで重要な点は、彼のコードがうまくいかなかった理由は、 '='を使って 'searchResult '=='を使って比較するのではなく、 –

    +0

    @JustinSatyrはさらに完全な – JaredPar

    +0

    と 'if'の代わりに' If'を更新しました。 –

    1
    if (searchResult) is the same as if(searchResult == true) 
    if (!searchResult) is the same as if(searchResult == false) 
    
    関連する問題