Выполните сценарий после определенной задержки с помощью JavaScript

Это помещает ваш персональный объект в новый список в классе.

185
задан nyedidikeke 11 January 2017 в 17:22
поделиться

5 ответов

Там следующее:

setTimeout(function, milliseconds);

функция, которая может быть передана время, после которого будет выполняться функция.

См.: Метод Окна setTimeout() .

184
ответ дан kenorb 23 November 2019 в 05:52
поделиться

Только для добавления к тому, что все остальные сказали [приблизительно 113]: Если Вы хотите вызвать функцию с параметром в будущем, необходимо настроить некоторые вызовы анонимной функции.

необходимо передать функцию как аргумент в пользу него, чтобы быть названными позже. В действительности это означает без скобок позади имени. Следующее назовет предупреждение сразу, и это отобразит 'Привет мир':

var a = "world";
setTimeout(alert("Hello " + a), 2000);

Для фиксации этого можно или поставить имя функции (поскольку Flubba сделал), или можно использовать анонимную функцию. Если необходимо передать параметр, то необходимо использовать анонимную функцию.

var a = "world";
setTimeout(function(){alert("Hello " + a)}, 2000);
a = "Stack Overflow";

, Но если Вы выполняете тот код, Вы заметите, что после 2 секунд во всплывающем окне будет сказано 'Привет Переполнение стека'. Это вызвано тем, что значение переменной измененного за те две секунды. Чтобы заставить его говорить 'Привет мир' после двух секунд, необходимо использовать следующий фрагмент кода:

function callback(a){
    return function(){
        alert("Hello " + a);
    }
}
var a = "world";
setTimeout(callback(a), 2000);
a = "Stack Overflow";

Это будет ожидать 2 секунды и затем открывать 'Привет мир'.

235
ответ дан Alexander Elgin 23 November 2019 в 05:52
поделиться

Только расшириться немного... Можно выполнить код непосредственно в эти setTimeout вызов, но как говорит @patrick, Вы обычно присваиваете функцию обратного вызова, как это. Время является миллисекундами

setTimeout(func, 4000);
function func() {
    alert('Do stuff here');
}
35
ответ дан Alexander Elgin 23 November 2019 в 05:52
поделиться

Необходимо использовать setTimeout и передать его функция обратного вызова. Причина Вы не можете использовать сон в JavaScript, состоит в том, потому что Вы заблокировали бы всю страницу от выполнения чего-либо тем временем. Не хороший план. Используйте модель событий JavaScript и останьтесь счастливыми. Не боритесь с ним!

15
ответ дан Patrick 23 November 2019 в 05:52
поделиться

Можно также использовать window.setInterval () для выполнения некоторого кода неоднократно в равном интервале.

14
ответ дан rcoup 23 November 2019 в 05:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: