JavaScript · Intermediário · Inglês · Técnico
this
Palavra-chave que se refere ao objeto em cujo contexto a função executa. Seu valor depende de como a função é chamada, não de onde foi escrita, exceto nas arrow functions.
Onde usar
Causa os bugs de contexto mais comuns, como perder o this ao passar um método como callback. Em code review, pedem-se arrow functions, bind ou métodos ligados.
Em código
const o = {
n: 'ok',
f() { return this?.n; },
};
console.log(o.f()); // 'ok'
const g = o.f;
console.log(g()); // undefinedExemplos
The method lost its this when I passed it as a callback.
O método perdeu o this quando passei como callback.
Inside an arrow function, this comes from the outer scope.
Dentro de uma arrow function, o this vem do escopo externo.
Cuidado
Achar que o this é fixo: o mesmo método tem this diferente ao ser chamado como obj.fn(), solto ou via call.
Sinônimos
contexto
Origem
Do inglês this, 'este'.