Javascript 简单编程数学
我正在尝试随机化对象中的对象Javascript 简单编程数学,javascript,Javascript,我正在尝试随机化对象中的对象 do{ e = enemyList[Math.floor(enemyList.length * Math.random())]; } while (e.level > (player.level + 5) && e.level < (player.level - 5)); return e; do{ e=enemyList[Math.floor(enemyList.length*Math.rand
do{
e = enemyList[Math.floor(enemyList.length * Math.random())];
} while (e.level > (player.level + 5) && e.level < (player.level - 5));
return e;
do{
e=enemyList[Math.floor(enemyList.length*Math.random())];
}而(e.level>(player.level+5)和&e.level<(player.level-5));
返回e;
我如何使“e”必须在上面5级和下面5级之间才能停止循环
是的,这真的很容易,但我的头疼是因为一些原因:我认为你应该使用
或而不是和。如果低于5或高于5。否则,该条件将永远无法满足。我认为您应该使用或而不是和。如果低于5或高于5。否则,该条件将永远无法满足。您的比较方法是错误的(+
应该是-
,反之亦然):
}而(e.level>(player.level-5)和&e.level<(player.level+5));
(你的问题的措辞有些含糊不清;可能是你应该使用=
和
和你的比较方法是错误的(+
应该是-
,反之亦然):
}而(e.level>(player.level-5)和&e.level<(player.level+5));
(你问题的措辞有些含糊不清;可能是你应该使用=
和
和怎么可能同时是上面5级和下面5级?你能再解释一下吗,或者举个例子吗?我不知道你说的上面5级和下面5级是什么意思。而且,看起来你r函数只返回一个对象(除非我读错了),那么为什么要循环呢?我希望敌人的等级在玩家的等级减5和加5之间。所以while语句应该在10和20之间停止,如果你是15级,它怎么可能同时是5级以上和5级以下?你能再解释一下吗,或者举个例子吗?我不知道你说的5级以上和5级以下是什么意思另外,函数似乎只返回一个对象(除非我读错了),那么为什么要循环呢?我希望敌人的等级在玩家的等级减5和加5之间。那么while语句应该在10和20之间停止,如果你是15级,那么顺序会有什么不同?除非有副作用,&&&
是可交换的。@Barmar:如果你仔细看,区别会超过顺序(事实上,这与订单无关).你改变了感觉--你正在测试e
是否在5分以下和5分以上之间。这将使其在5分以上和5分以下之间,但我相信OP是在问如何使其在5分以上或5分以下。我们真的应该等到海报澄清问题后再尝试回答。如文所述,这个问题毫无意义。有什么区别吗订单有效吗?除非有副作用,&&
是可交换的。@Barmar:如果你仔细看,差异大于订单(事实上,它与订单无关).你改变了感觉--你正在测试e
是否在5分以下和5分以上之间。这将使它在5分以上和5分以下之间,但我相信OP是在问如何使它在5分以上或5分以下。我们真的应该等到海报澄清了问题后再尝试回答。如文所述,这个问题毫无意义。为什么?我想这样做只在-5和+5之间哦,我觉得你希望它在-5和+5之间。在这种情况下,NPE的答案似乎可以满足你的要求。+1不,这实际上是正确的答案,因为OP希望循环在e
超出范围时继续。一旦e
在范围内,循环将退出如果OP遵循这个答案。是的,这个答案是正确的。有时会停下来,or总是起作用。为什么?我希望它只在-5和+5之间。哦,我的印象是你希望它在这上面和下面。在这种情况下,NPE的答案似乎会满足你的要求。+1不,这实际上是正确的答案,因为at OP希望循环在e
超出范围时继续。如果OP遵循此答案,循环将在e
超出范围后退出。是的,此答案是正确的。有时会停止循环,or始终有效。
} while (e.level > (player.level - 5) && e.level < (player.level + 5));