2

Googleマップのマーカーを作成するために'for'ループ内で実行されるIfステートメントがあります。基本的に、チェックボックスがオンになっていない場合、コードはすべてすべてのマーカーを表示しますが、チェックボックスがオンになっている場合は、2番目のパラメーターをチェックし、この条件に一致するアイテムのコードのみを実行します。

以下のコードは正常に機能しますが、ifステートメントの両方の部分で同じコードを使用する必要があることを意味します。これを達成するためにIfステートメントを構造化するより良い方法がある場合、それを関数に組み込むことは別として?

if(!FriendlyChecked){

    //Code here

} else if(FriendlyChecked && Friendly == "Yes"){

    //Same code here

}
4

3 に答える 3

9

FriendlyCheckedが false の場合、最初の条件が満たされ、コードが実行されます。

したがって、2 番目の条件に達した場合はFriendlyCheckedtrue でなければならないので、それを確認する必要はまったくなく、それを確認するだけで済みますFriendly == "Yes"

if(!FriendlyChecked || Friendly == "Yes"){
    // code here
}
于 2012-07-25T13:22:40.037 に答える
2
if( !FriendlyChecked || (FriendlyChecked && Friendly == "Yes") ) {

  // your code

}

!FriendlyChecked || (FriendlyChecked && Friendly == "Yes")FriendlyCheckedどちらかがチェックされますfalse(チェックされていません)

OR FriendlyCheckedは istrueの値FriendlyですYes

于 2012-07-25T13:22:43.623 に答える
0

これで問題が解決します

 if((!FriendlyChecked) ||((FriendlyChecked)&&(Friendly == "Yes")){

 //Code here

} 
于 2012-07-25T13:27:23.660 に答える