Полный цикл в digital

Метод bind в JavaScript

Метод bind привязать контекст к функции. В качестве первого параметра следует передавать контекст, а последующими параметрами - параметры функции. Метод возвращает новую функцию, внутри которой this будет равным переданному контексту.

Синтаксис

функция.bind(контекст, параметр1, параметр2...)

Пример

Пусть у нас есть инпут:

<input id="elem" value="text">

Пусть ссылка на этот инпут записана в переменную elem:

let elem = document.querySelector('#elem');

Пусть у нас также есть следующая функция func:

function func(param1, param2) {
console.log(this.value + param1 + param2);
}

Давайте с помощью bind сделаем новую функцию, которая будет копией функции func, но this в ней всегда будет равен elem:

let newFunc = func.bind(elem);

Теперь в переменной newFunc лежит функция. Давайте вызовем ее, передав в первый параметр 1, а во второй 2:

newFunc('1', '2');

Давайте соберем все вместе:

let elem = document.getElementById('elem');
function func(param1, param2) {
console.log(this.value + param1 + param2);
}
let newFunc = func.bind(elem);
newFunc('1', '2');  // выведет 'text12'

Пример

Не обязательно записывать результат работы bind в новую функцию newFunc, можно просто перезаписать func:

let func = func.bind(elem)
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг