Приближение числа к нулю

209
28 февраля 2017, 17:34

Есть input с кнопкой. Изначально в input'е появляется случайное число от -100 до 100. При нажатии на кнопку генерируется случайно число из этого диапазона (к примеру -67). Как мне сделать, что бы при повторном нажатии генерировалось число уже из нового диапазона (к примеру от -67 до 67 смотрите прошлые пример) и так пока число не будет равно 0?

Я сделал, что бы при нажатии генерировалось новое число, но как сделать, что бы оно новый диапазон учитывало сделать?

var input = document.querySelector('#input'), 
    button = document.querySelector('#button'); 
     
function random(min, max) { 
  return Math.floor(Math.random() * (max - min + 1)) + min; 
}; 
 
input.value = random(-100, 100); 
 
button.onclick = function() { 
  // тут не могу додуматься, как новый диапазон взять 
  input.value = random(-100, 100); 
};
<input type="text" id="input"><button id="button">Приблизить</button>

Answer 1

Можно брать минимальное и максимальное числа из пары {-value, value}

var input = document.querySelector('#input'), 
    button = document.querySelector('#button'); 
     
function random(min, max) { 
  return Math.floor(Math.random() * (max - min + 1)) + min; 
}; 
 
input.value = random(-100, 100); 
 
button.onclick = function() { 
  if (input.value == 0) { 
    button.disabled = true; 
    return; 
  } 
  input.value = random(Math.min(-input.value, input.value), Math.max(-input.value, input.value)); 
};
<input type="text" id="input"><button id="button">Приблизить</button>

READ ALSO
Скрипт для скачивания фото с инстаграм

Скрипт для скачивания фото с инстаграм

Доброго времени суток господа!

652
Replace в регулярном выражении

Replace в регулярном выражении

Не могу разобраться в replace в регулярном выраженииВот сама регулярка: /(^https?:\/\/www\

262
Подгрузка контента

Подгрузка контента

Этот скрипт подгружает контент без перезагрузки страницыВ функции указана подгрузка в один div, КАК СДЕЛАТЬ ПОДГРУЗКУ В РАЗНЫЕ div ОДНОВРЕМЕННО...

359