2

我有一个在“for”循环中运行的 If 语句,用于为 Google 地图创建标记。基本上,如果未勾选复选框,它将运行代码全部显示所有标记,但如果勾选复选框,则检查第二个参数并仅运行符合此条件的项目的代码。

我下面的代码工作正常,但这意味着我必须在 if 语句的两个部分使用相同的代码。除了将其构建为函数之外,是否有更好的方法来构造 If 语句来实现这一点?

if(!FriendlyChecked){

    //Code here

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

    //Same code here

}
4

3 回答 3

9

如果FriendlyChecked为假,则满足第一个条件并执行代码。

因此,如果满足第二个条件,则FriendlyChecked必须为真,因此您根本不需要检查它,您只需要检查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")将检查是否FriendlyCheckedfalse(未检查)

ORFriendlyCheckedistrue的值FriendlyYes

于 2012-07-25T13:22:43.623 回答
0

这将解决您的问题

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

 //Code here

} 
于 2012-07-25T13:27:23.660 回答