我希望使用Javascript生成1到2之间的随机数。
我认为这很容易吗?
Math.floor((Math.random() * 2) + 1);
但是我想生成第二个数字,如果第一个结果是1,则为2;如果第一个结果是2,则为1.
(我希望标点符号清楚。)
更新 - 随机整数,我应该说(即只有1或2)。
答案 0 :(得分:3)
只需从3中减去第一个值,就可以雄辩地执行此操作:
var first = Math.floor((Math.random() * 2) + 1);
var second = 3 - first;
答案 1 :(得分:1)
var result = Math.floor((Math.random() * 2) + 1); // Get 1 or 2
console.log("Random was: " + result); // Test
var result2 = result === 1 ? 2 : 1; // Ternary to get 2 or 1 based on first #
console.log("Answer is: " + result2); // Test
答案 2 :(得分:1)
所以你想要生成第二个数字,给定1得到2,得到2得到1。
您可以使用它:
num2 = num1 % 2 + 1
这使用模运算符返回整数除法的余数。即:
1 % 2 == 1 // 1 / 2 = 0r1
2 % 2 == 0 // 2 / 2 = 1r0
答案 3 :(得分:1)
if ( $counter == 1 || $counter == 4 || $counter == 7 )

答案 4 :(得分:1)
鉴于这是您的脚本将处理的唯一场景,您可以使用简单的if语句或三元组来执行此操作:
if
示例var firstRandomNumber = Math.floor((Math.random() * 2) + 1);
var secondRandomNumber;
if (firstRandomNumber === 1) {
secondRandomNumber = 2;
} else {
secondRandomNumber = 1;
}
var firstRandomNumber = Math.floor((Math.random() * 2) + 1);
var secondRandomNumber = firstRandomNumber === 2 ? 1 : 2;
答案 5 :(得分:0)
我希望使用Javascript生成1到2之间的随机数 包容。
function getRandInteger(min, max) {
return Math.floor(min + (1 + max - min) * Math.random());
}
var myRandomNumb = getRandInteger(1, 2);
编辑仅限整数
但是我想生成第二个数字,如果是第一个结果 是1,是2;如果第一个结果是2,则为1。
一个简单的if
/三元运算符......