Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Легенький вопросик. (https://javascript.ru/forum/misc/68972-legenkijj-voprosik.html)

j0hnik 21.05.2017 17:14

Легенький вопросик.
 
function func(){

var a = Math.random();

setTimeout(function() {
b = a;
}, 700);

if (a > b) {alert("предыдущее значение А больше текущего");}
else if (a < b) {alert("предыдущее значение А меньше текущего");}
else {alert("значения равны");}
}
setInterval (func, 1500);


Часто бывает нужно сравнивать рандомное значение переменной с предыдущим ее значением.

В общем напишите другие решения задачи. :victory:

Diphenyl Oxalate 21.05.2017 22:36

Присваивание b = a надо после проверок, т.е. в конце

j0hnik 21.05.2017 23:36

Цитата:

Сообщение от Diphenyl Oxalate (Сообщение 452991)
Присваивание b = a надо после проверок, т.е. в конце

Спасибо за совет, не могли бы пояснить, в чем разница?

ruslan_mart 22.05.2017 08:30

var b;

function func() {
   var a = Math.random();

   if(b != null) {
       if (a > b) alert("предыдущее значение А больше текущего");
       else if (a < b) alert("предыдущее значение А меньше текущего");
       else alert("значения равны");
   }

   b = a;
   setTimeout(func, 1500);
}

func();

ksa 22.05.2017 08:53

Цитата:

Сообщение от j0hnik
не могли бы пояснить, в чем разница?

Скажу так - так конь не ходит. (с) :)

j0hnik 22.05.2017 13:41

Спасибо всем, как изначально написал первое, что в голову как пришло, так и пользовался, но догадывался, что не совсем правильно!


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