Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблемы с вводом параметров при генерации числа из заданного диапазона (https://javascript.ru/forum/misc/79258-problemy-s-vvodom-parametrov-pri-generacii-chisla-iz-zadannogo-diapazona.html)

link_443 16.01.2020 01:42

Проблемы с вводом параметров при генерации числа из заданного диапазона
 
Ребята, приветствую! Имеется два поля для ввода чисел, среди диапазона от меньшего к большему необходимо сгенерировать случайное число. Для этого есть функция f1. При передаче параметров через input функция работает некорректно (иногда выдаются числа даже сверх максимального значения). В то же время, если input обойти и вводить параметры напрямую в функцию, то она сработает. Куда копать?!

let out6 = document.querySelector('.out6');
let btn = document.querySelector('.btn');

function f1(min,max) {
return Math.floor(Math.random() * (max - min +1)) + min;
}

btn.onclick = function () {
let inp1 = document.querySelector('.inp1').value;
let inp2 = document.querySelector('.inp2').value;
out6.textContent = f1(inp1,inp2);
}

рони 16.01.2020 01:51

Цитата:

Сообщение от link_443
inp1,inp2

строки преобразуйте в числа через Number или +

link_443 16.01.2020 02:04

Спасибо большое Вам, забыл про это совсем. Сделал так, через inp1 = parseInt(inp1) и для второго input также.

Malleys 16.01.2020 02:04

link_443, ещё вариант — вместо value (который возвращает строку) используйте valueAsNumber (который возвращает число в случае использования с полем для ввода чисел)

link_443 16.01.2020 02:06

Цитата:

Сообщение от Malleys (Сообщение 518785)
link_443, ещё вариант — вместо value (который возвращает строку) используйте valueAsNumber (который возвращает число в случае использования с полем для ввода чисел)

Вот это удобно! Спасибо!:dance:


Часовой пояс GMT +3, время: 20:39.