Есть код
function randomNum(a, b, N){
var arr =[];
var rand;
for (i = 0; i <= N; i++) {
rand = Math.random() * (b-a) + a;
arr.push(rand + '\n');
}
arr.sort(numeric);
alert (arr);
}
Пользователь вводит начало и конец промежутка, а так же количество чисел, которые нужно рандомно получить с этого промежутка. Эти числа в процессе цикла записываются в массив, потом все сортируется по порядку возрастания (отдельная функция), и в итоге выводится массив. При границах 1-10, 1-20 и т.д. Все хорошо. Но если начальную границу с 1 изменить, к примеру, на 20 (20-30, на пример), будет выводится массив с числами от 1-10 (логика такая, что между 20 и 30 расстояние 10, вот он и выводит числа от 1 до 10).
Можно сделать так, чтобы выводились числа из промежутка (из 20-30, к примеру, 21,..... и т.д.)
А-а-а. Все понятно. Я увидел сквозь монитор, как Вы вызываете эту функцию:
Вы передаете туда строки.
function randomNum(a, b, N) {
var arr = [];
for (i = 0; i < N; i++) {
arr.push(Math.random() * (b - a) + a);
}
arr.sort((n1, n2) => n1 - n2);
return arr;
}
console.log(randomNum(20, 30, 5));
console.log(randomNum("20", "30", 5));
Обратите внимание: во втором массиве все элементы - строки, а не числа, и все заканчиваются на "20"
.
function randomNum(a, b, N) {
// !!!
a = +a;
b = +b;
N = +N;
// !!!
var arr = [];
for (i = 0; i < N; i++) {
arr.push(Math.random() * (b - a) + a);
}
arr.sort((n1, n2) => n1 - n2);
return arr;
}
console.log(randomNum(20, 30, 5));
console.log(randomNum("20", "30", 5));
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Подскажите, как можно добавить на музыкальный сайт прослушивание музыки таким образом, что бы при нажатии на песню открывалась либо новая...
Представьте, что есть плюс нажимая на который вставляется inputТаких input можно вставить сколько угодно (пусть будет 30 штук)