JavaScript · Avançado · Inglês · Técnico
with
Instrução antiga que adiciona um objeto à frente da cadeia de escopo dentro de um bloco. Foi banida do strict mode por tornar o código imprevisível.
Onde usar
Só se vê em código legado ou em perguntas de entrevista sobre escopo. Em code review, deve ser removida: atrapalha otimizações e torna ambíguo a que um nome se refere.
Em código
const p = { x: 1, y: 2 };
with (p) {
console.log(x + y); // 3
}
// em strict mode: SyntaxErrorExemplos
Nobody uses with anymore; it's banned in strict mode.
Ninguém mais usa with; ele é proibido em strict mode.
That quiz question is about the with statement.
Essa pergunta de quiz é sobre a instrução with.
Cuidado
Usar with para encurtar acesso a propriedades; prefira destructuring.