Обновление массива на основе случайно сгенерированного индекса - PullRequest
0 голосов
/ 06 мая 2020

Я новичок в Javascript и jQuery. Я пытаюсь создать список фильмов, который случайным образом выберет элемент из списка, опубликует результат и удалит элемент из исходного списка. Он использует ввод текста, .pu sh и .append, чтобы отслеживать список и обновлять массив совпадающего текста. Я думал, что я буду использовать массив, соответствующий ul, для генерации случайного номера индекса из его длины, а затем использовать это число для удаления li из ul по индексу. Идея basi c работает. Моя проблема в том, что каждый раз, когда он выбирает элемент из списка, элемент, который он удаляет из массива, отличается от элемента, который он отправляет и удаляет из ul. Кажется, что части работают нормально по отдельности, пока я не запустил их в функции, привязанной к кнопке.

Вот код, который я использую. Массив watchList заполняется .pu sh всякий раз, когда принимается текст для обновления ul. Я проверил, и индекс для обоих совпадает.

function randomShow(){
var r = Math.floor(Math.random() * watchList.length);
for(var i = 0; i < watchList.length; i++){
    if(i === r) {
            alert(watchList[i]);
            watchList.splice(watchList.indexOf[i],1);
            $("li").eq(i).remove();

        }
    }

}

1 Ответ

0 голосов
/ 06 мая 2020

Думаю, вам не нужен al oop. Попробуйте это;

function randomShow(){
   var r = Math.floor(Math.random() *watchList.length);
   $("li").eq(r).remove();
}
...