⏪ Вернуться в оглавление

About the author


Author: https://t.me/ahillary

Resources


Channel: https://t.me/semolina_code_python

Chat: https://t.me/python_with_ahillary

YouTube: https://www.youtube.com/@semolinacode

Coding training: https://t.me/how_to_code_web3

Prop trading: https://t.me/semolina_prop


Содержание

Что такое переадресация вызова?

В JavaScript/TypeScript функции являются объектами, а значит, мы можем передавать их в другие функции, изменять поведение и даже менять контекст выполнения (this).

Иногда нам нужно вызвать одну и ту же функцию для разных объектов. Но если эта функция использует this, то просто передать её в другой контекст не получится — this останется привязан к своему объекту.

Потеря this

this — это ссылка на объект, которому принадлежит метод.

class User {
	name: string;
  
	constructor(name: string) {
	  this.name = name;
	}
  
	sayHello() {
	  console.log(`Привет, я ${this.name}`);
	}
}

const user = new User("Alice");
user.sayHello(); // Привет, я Alice