【发布时间】:2013-03-11 18:05:20
【问题描述】:
我正在制作一个游戏,从一堆 15 到 30 块石头开始,用户和计算机都取石头,直到取完最后一颗石头。但是,我需要一个函数来确定用户拿走的石头数量是否有效,即小于等于 3 且大于 0。所以我的函数应该返回 true 或 false,但是当我输入 " 2",它返回假。这是涉及的代码:
var valid = validEntry(stones, stonesTaken);
function validEntry(stones, stonesTaken) {
if (stones >= stonesTaken) {
if(stonesTaken <= 3 && stonesTaken > 0) {
return true;
} else {
return false;
}
} else {
return false;
}
}
P.S.- 每当棋子低于 3 时,玩家和计算机都可以拿走比可用棋子更多的棋子,这就是第一个 if 语句存在的原因。
【问题讨论】:
-
当你输入 2 取走的石头时,石头的价值是多少?我猜你的第一个条件失败了
-
在这里看起来有效:jsfiddle.net/2gCD9
-
如果 JSFiddle 不起作用(当我尝试打开自己的链接时,它对我不起作用)。 codepen.io/anon/pen/oxeKp 有效。
-
您可能应该同时使用
parseInt(),然后您只需要stonesTaken <= 3。 -
@KevinBowersox 石头的价值是24,游戏开始时,它从未低于15。
标签: javascript function boolean