Показать сообщение отдельно
  #1 (permalink)  
Старый 05.06.2019, 21:54
Аспирант
Отправить личное сообщение для tp-20 Посмотреть профиль Найти все сообщения от tp-20
 
Регистрация: 19.06.2018
Сообщений: 61

проблема с Math.random - выводит одно и то же значение из массива
Приветствую, форумчане!
есть простой текстовый рандомайзер:
var girls = ["Маша", "Даша", "Ксюша", "Катя"];
var girl = girls[Math.floor(Math.random() * girls.length)];

var actions = ['любит', 'не любит', 'уважает', 'видит'];
var act = actions[Math.floor(Math.random() * actions.length)];

var boys = ["Мишу", "Пашу", "Диму", "Федю"];
var boy = boys[Math.floor(Math.random() * boys.length)];

    setInterval(function(){
        $("#block").fadeOut(400, function(){
            $("#block").text("Девочка " + girl + " " + act + " мальчика " + boy).fadeIn(500);
        });
    }, 4000);


это что-то на подобие ротатор цитат.

есть три массива: мальчики, девочки и действия.
каждые 4 секунды в блоке с id='block' рандомно должны выводиться значения из массива. Но значения выводятся одни и теже. Не меняются. Однако при перезагрузке страницы эти значения меняются один раз, и опять по кругу вертятся одни и те же значения из массивов.

К примеру сейчас выводится каждые 4 секунды таким образом:
"Девочка Даша любит мальчика Федю"
"Девочка Даша любит мальчика Федю"
"Девочка Даша любит мальчика Федю"
"Девочка Даша любит мальчика Федю"

а надо так:
"Девочка Маша любит мальчика Пашу"
"Девочка Даша видит мальчика Федю"
"Девочка Ксюша не любит мальчика Федю"
"Девочка Маша уважает мальчика Пашу"
и тд.

что нужно дописать, чтобы рандом выводил как надо?
Ответить с цитированием