Javascript 多个if stations不工作
当我在表格中有if语句时Javascript 多个if stations不工作,javascript,if-statement,Javascript,If Statement,当我在表格中有if语句时 for (var i = 0; i < b;i++) { if (((x + 10) > tail[i].x & (x + 10) < tail[i].x + 10) & angle == 0) { vol = 0; } else { vol = 2 } } 只有最后一个if语句有效 我按照建议将&更改为&&但是我仍然得到了奇怪的bug,除了表单中的最后一个if语句 for
for (var i = 0; i < b;i++) {
if (((x + 10) > tail[i].x & (x + 10) < tail[i].x + 10) & angle == 0) {
vol = 0;
} else {
vol = 2
}
}
只有最后一个if语句有效
我按照建议将&更改为&&但是我仍然得到了奇怪的bug,除了表单中的最后一个if语句
for (var i = 0; i < b;i++) {
if (((x + 10) > tail[i].x & (x + 10) < tail[i].x + 10) & angle == 0) {
vol = 0;
} else {
vol = 2
}
}
iftrue{}
else{}
以相同的形式跳过最后一个,如果我有3个,则跳过前2个,最后一个运行我认为您需要使用&&而不是&
if(((x+10)>tail[i].x && (x+10)<tail[i].x+10) && angle==0)
{
vol=0;
}
else
{
vol=2;
}
&表示按位和
&&表示逻辑与
查看此您可以更改
if (((x + 10) > tail[i].x & (x + 10) < tail[i].x + 10) & angle == 0) {
到
但这很奇怪
if (x + 10 > tail[i].x && x + 10 < tail[i].x + 10 && angle == 0) {
// ^^^^ together w/ ^^^^
你是说最后一次执行如果有效?它们都是有效的,但是在循环中多次设置变量的值只会得到上一轮设置的值。请解释您试图做什么。循环后如何使用vol?执行所有if..else,并根据循环期间的条件结果将vol设置为0或2。但是,在循环之后,vol的值将仅是最后一次执行的结果。也许你需要一个数组而不是一个变量?