ExpertiDict

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

wrapper object

/ˈɹæpɚ ˈɑbdʒɛkt/substantivo

Objeto criado por new String, new Number ou new Boolean que embrulha um primitivo. A linguagem também os cria temporariamente ao acessar métodos de primitivos, como 'abc'.length.

Onde usar

Explica por que 'oi'.toUpperCase() funciona num primitivo. Em code review, new String e new Boolean são sinal de erro, pois new Boolean(false) é truthy.

Em código

const p = 'oi';
const w = new String('oi');
console.log(typeof w);  // 'object'
console.log(p == w);    // true
console.log(p === w);   // false
console.log(!!new Boolean(false)); // true

Exemplos

The string methods work thanks to a temporary wrapper object.

Os métodos de string funcionam graças a um wrapper object temporário.

A new Boolean(false) is a wrapper object, so it's truthy.

Um new Boolean(false) é um wrapper object, então é truthy.

Cuidado

Usar new Boolean(false) em condições: o objeto é sempre truthy, mesmo envolvendo false.

Sinônimos

objeto envoltório

Veja também

Todos os termos de JavaScript