ExpertiDict

JavaScript · Avançado · Inglês · Técnico

with

/wɪð/palavra-chave

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: SyntaxError

Exemplos

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.

Veja também

Todos os termos de JavaScript