执行我的if条件

时间:2016-04-19 10:27:13

标签: javascript

我有javascript条件:

if((modeAppelant == "ajout" && val < 2) || (modeAppelant == "ajout" && numContacts <= 0)){
    check = false;
    alert("Vous devez saisir au moins un contact");
}

例如,当我有:

  • val=2
  • modeAppelant="ajout"
  • numContacts=0

我在if条件下进去了,为什么?

我的OR无效..?

3 个答案:

答案 0 :(得分:1)

您正在使用此条件

(modeAppelant == "ajout" && numContacts <= 0)

您的数据集中的确如此

  • val=2
  • modeAppelant="ajout"
  • numContacts=0

条件会检查true值,直到找到一个...相反 AND 将一直持续到#39} ;找到false。如果它发现了错误的价值,它就不会走得更远。

答案 1 :(得分:1)

因为条件表达式的第二部分:

(modeAppelant == "ajout" && numContacts <= 0)

答案 2 :(得分:1)

false || true将评估为true。在您的情况下,(modeAppelant == "ajout" && val < 2)false(modeAppelant == "ajout" && numContacts <= 0)true。因此,你的if条件被执行。