JavaScript - генератор случайных слов - PullRequest
1 голос
/ 01 марта 2020

Интересно, почему math.floor возвращает хорошие результаты, чем math.ceil, когда я генерирую случайные слова и регистрирую console.log.

Почему math.ceil не может работать идеально? Есть ли что-то в несовместимости math.ceil с math.random или это как я назначаю и номер массива (элемент) строковых элементов?

Ответы [ 2 ]

6 голосов
/ 01 марта 2020

Math.random() возвращает число меньше единицы (не включительно), но больше 0 (включительно)

Math.floor(Math.random() * 10); // returns a random integer from 0 to 9

Math.ceil(Math.random() * 10); // returns a random integer from 0 to 10 with a very low chance of 0

Если Math.random приводит к 0 точно, то и Math.floor() и Math.ceil() вернет 0, но если Math.random() приведет к 0.00000001, Math.floor() вернет 0 и Math.ceil() вернет 1.

0 голосов
/ 01 марта 2020

если вы используете Math.ceil(Math.random()*10) вы потеряли первый номер и если вы используете Math.floor(Math.random()*10) вы потеряли последний номер, но если вы используете Math.round(Math.random()*10), вы можете найти от 0 до 10 номеров

var k=2.1
console.log(Math.ceil(k))
console.log(Math.floor(k))
console.log(Math.round(k))
 k=2.6
console.log(Math.ceil(k))
console.log(Math.floor(k))
console.log(Math.round(k))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...