this в setTimeout и setInterval JavaScript

this в setTimeout и setInterval JavaScript

Konark 30 марта, 2020 Комментариев (0)

В JavaScript есть такие функции как setTimeout и setInterval. Они предназначены для планирования (или же отстрочки) вызова функции.

setTimeout позволяет вызвать функцию один раз через определённый интервал времени.

setInterval позволяет вызывать функцию регулярно, повторяя вызов через определённый интервал времени.

Но если Вы вдруг захотите использовать this, то увидите неприятную особенность – он “потеряется” и вернет undefined.

Для решения этой проблемы, есть несколько вариантов. Я же использую и рекомендую использовать, как самый простой способ, передачу this в переменную функции. Например:

var self = this;

setTimeout( function() {
    self.functionName();
} );
Просмотров: 682
Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Имя и e-mail обязательны для заполнения.