我正在编写一个简单的游戏,但我遇到了生成值的问题。我需要生成一个介于1和500之间的数字,但只能以10,20,30,40,50等形式生成。我已经编写了这样的功能,但数字调整一次,平均为100页的茶点。我怎么能这样做?
console.log(generatePosition());
function generatePosition() {
var x = Math.floor(Math.random() * 500) + 1;
var y = Math.floor(Math.random() * 500) + 1;
if (x % 10 == 0 && x % 10 == 0) {
var cords = [x, y];
}
return cords;
}

答案 0 :(得分:2)
最简单的解决方案可能是生成1到50之间的随机数,然后将其乘以10.因此,您将只获得10到500之间的随机数,正如您所希望的那样: - )
所以,基本上就是这样:
const randomInt = function (min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
};
const randomNumberDivisibleBy10 = randomInt(1, 50) * 10;
console.log(randomNumberDivisibleBy10);
// => Something such as 10, 20, 30, …, 500
所以,你的功能看起来像这样:
const generatePosition = function () {
const x = randomInt(1, 50) * 10,
y = randomInt(1, 50) * 10;
const coordinates = [ x, y ];
return coordinates;
};
Etvoilà: - )
答案 1 :(得分:-1)
function generatePosition() {
var x = Math.floor(Math.random() * 500) + 1;
var y = Math.floor(Math.random() * 500) + 1;
var x = x - (x % 10);
var y = y - (y % 10);
var cords = [x, y];
return cords;
}
您可以使用:)