Стрелочные функции для jQuery-разработчиков

17.03.2016

Стрелочные функции (arrow functions) — это действительно очень полезная новая возможность в ES6.

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

Проблема, с которой мы часто сталкиваемся при обработке событий в jQuery, может быть решена с их помощью:


// Go from this code:
$('.cta').on('click',function() {
    var that = this;
    setTimeout(function() {
        $(that).toggleClass('on');
    }, 1000)
});

// To this code:
$('.cta').on('click',function() {
    setTimeout(()=> {
        $(this).toggleClass('on');
    }, 1000)
});
Рассылка
Подпишитесь на рассылку и получайте дайджест новостей и статей.
Никакого спама!
Подписаться