如果语句带有逻辑或运算符
我希望我的函数检查状态是“关闭”还是“完成”,以及是否是在括号中执行操作的任何一个。
出于某种原因,我似乎无法完成这项工作,它将检查已关闭但未检查完成。
for (var id in games) {
if (games[id].league === 'NCAAB')
if ((games[id].status == 'complete')||(games[id].status == 'closed')) {
sports.clearTimer();
}
if (ts >= games[id].scheduledTimeUnix) { xxxxxx}
此时,尽管节点的唯一两个状态已完成并已关闭,但计时器未被清除。 XXXX代表发生的api调用,并且该函数不断地进行这些调用。
回答如下:or
检查是否为true,如果得到一个,则不会检查其他条件并执行前面的操作。
if ((games[id].status == 'closed')||(games[id].status == 'complete'))
所以,如果你得到
games[id].status == 'closed'
如果是这样,它将不会检查
(games[id].status == 'complete')