В каких случаях лучше использовать bind(this) вместо var self = this?



Автор Lance Spencer задал вопрос в разделе JavaScript

Что правильнее и в каких случаях лучше делать bind(this) чем var self=this; и получил лучший ответ

Ответ от Ёаня Семенов[гуру]
Использование var self = this это устаревший прием сохранения контекста, создающий лишнюю переменную в замыкании. Метод bind лучше применять, когда нужно передать функцию как колбэк, например в setTimeout или addEventListener. Он возвращает новую функцию, жестко привязанную к нужному контексту, не засоряя область видимости дополнительными именами. В современном JavaScript самым правильным и чистым решением является использование стрелочных функций. Они автоматически лексически наследуют this из внешнего окружения, делая ненужными как создание переменной self, так и явный вызов bind. Таким образом, bind предпочтительнее переменной self при передаче методов в качестве колбэков, если по каким-то причинам невозможно применить стрелочную функцию. Во всех остальных случаях в новых проектах для сохранения контекста лучше сразу использовать стрелочные функции.

Ответ от ВикиВопрос[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Что правильнее и в каких случаях лучше делать bind(this) чем var self=this;

в каких случаях лучше употреблять "i don't know", а в каких ''i have no idea"?
Фразы "I don't know" и "I have no idea" часто используются как синонимы, но между ними есть важные
подробнее...

в каких случаях "не знаком" пишется слитно, а в каких раздельно
Краткое прилагательное незнаком пишется слитно, если его можно заменить синонимом без не, например
подробнее...

В каких случаях употребляется глагол "go on" и "keep on"?
Глаголы go on и keep on переводятся как продолжать, но имеют важные смысловые и грамматические
подробнее...

В каких случаях перед "чем" запятая не ставится?
Запятая перед «чем» не ставится в нескольких случаях. В цельных выражениях «(не) больше чем», «(не)
подробнее...

В каких случаях в англ. языке в предложении перед глаголом ставится "to"
Частица to перед глаголом ставится, когда глагол находится в неопределенной форме (инфинитиве) и
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*