Я работаю над выражениями After Effetcs.Я пытаюсь использовать случайную функцию, чтобы вернуть 1 или -1, но никогда не 0.
Мне нужно вернуть целые числа в диапазоне от 10 до 20 или от -20 до -10.
Кажетсябыть простым, но я не могу найти, как это сделать.Есть идеи?
Спасибо за помощь!
Большое спасибо за эти ответы.Я использовал что-то вроде этого, и это работает, но, возможно, это не идеально:
random(10,20)*(Math.round(random())-0.5)*2
Я не уверен, что вероятность получить 1 или -1 точно равна 1 в 2.
Вы можете взять коэффициент два и заменить ноль на -1.
-1
function random() { return Math.floor(Math.random() * 2) || -1; } var i = 10; while (i--) console.log(random());
Все ответы на этот вопрос хороши, но я подумал, что еще могу добавить это:)
console.log("1 or -1: ", (()=>{if(Math.random() > 0.5) return 1; else return -1})()) console.log("Between 10 and 20: ", Math.floor(Math.random()*11+10)); console.log("Between -10 and -20: ", Math.floor(Math.random()*11+10) * -1);
Я украл некоторое вдохновение из Получение случайного значения из массива JavaScript
var myArray = [1, -1] var rand = myArray[Math.floor(Math.random() * myArray.length)]; console.log(rand);
Поместите любое число в этот массив.