JavaScript · Avançado · Inglês · Técnico
Reflect
Objeto embutido com funções que espelham as operações internas da linguagem, como get, set, has e ownKeys. Foi desenhado para trabalhar com Proxy e prefere booleanos a exceções.
Onde usar
Aparece dentro das traps de um Proxy para repassar a operação ao alvo. Em code review, usar Reflect.get(alvo, chave, receptor) preserva o this correto em getters.
Em código
const o = { x: 1 };
console.log(Reflect.has(o, 'x')); // true
console.log(Reflect.set(o, 'y', 2)); // true
console.log(Reflect.ownKeys(o));
// ['x', 'y']Exemplos
Forward the operation to the target with Reflect.
Repasse a operação ao alvo com Reflect.
Reflect.set returns a boolean instead of throwing.
O Reflect.set devolve um booleano em vez de lançar erro.
Cuidado
Achar que Reflect é um construtor: é um objeto com funções estáticas.