---
title: Object
slug: Web/JavaScript/Reference/Global_Objects/Object
tags:
- Objeto
translation_of: Web/JavaScript/Reference/Global_Objects/Object
---
{{JSRef}}
O construtor Object
cria um wrapper de objeto.
Sintaxe
// Object initialiser or literal
{ [ nameValuePair1[, nameValuePair2[, ...nameValuePairN] ] ] }
// Called as a constructor
new Object([value])
Parametros
nameValuePair1, nameValuePair2, ... nameValuePairN
- Pares de nomes (strings) e valores (qualquer valor) em que o nome é separado do valor por dois pontos.
value
- Qualquer valor.
Descrição
O construtor Object
cria um wrapper de objeto para o valor fornecido. Se o valor for {{jsxref ("null")}} ou {{jsxref ("undefined")}}, ele criará e retornará um objeto vazio, caso contrário, retornará um objeto de um Type que corresponde ao dado valor. Se o valor já for um objeto, ele retornará o valor.
Quando chamado em um contexto não-construtor, o object
se comporta de forma idêntica ao new Object ()
.
Veja também object initializer / literal syntax.
Propriedades do construtor Object
Object.length
- Tem um valor de 1.
- {{jsxref("Object.prototype")}}
- Permite a adição de propriedades a todos os objetos do tipo Object.
Métodos do construtor Object
- {{jsxref("Object.assign()")}}
- Copia os valores de todas as propriedades próprias enumeráveis de um ou mais objetos de origem para um objeto de destino.
- {{jsxref("Object.create()")}}
- Cria um novo objeto com o objeto e as propriedades do protótipo especificado.
- {{jsxref("Object.defineProperty()")}}
- Adiciona a propriedade nomeada descrita por um determinado descritor a um objeto.
- {{jsxref("Object.defineProperties()")}}
- Adiciona as propriedades nomeadas descritas pelos descritores fornecidos a um objeto.
- {{jsxref("Object.entries()")}}
- Retorna uma matriz contendo todos os pares
[key, value]
das próprias propriedades de string enumeráveis de um determinado objeto.
- {{jsxref("Object.freeze()")}}
- Congela um objeto: outro código não pode excluir ou alterar nenhuma propriedade.
- {{jsxref("Object.fromEntries()")}}
- Retorna um novo objeto de um iterável de pares de valor-chave (reverso à {{jsxref("Object.entries")}}).
- {{jsxref("Object.getOwnPropertyDescriptor()")}}
- Retorna um descritor de propriedade para uma propriedade nomeada em um objeto.
- {{jsxref("Object.getOwnPropertyDescriptors()")}}
- Retorna um objeto contendo todos os descritores de propriedade para um objeto.
- {{jsxref("Object.getOwnPropertyNames()")}}
- Retorna uma matriz contendo os nomes de todas as propriedades enumeráveis e não enumeráveis do próprio objeto fornecido.
- {{jsxref("Object.getOwnPropertySymbols()")}}
- Retorna uma matriz de todas as propriedades de símbolo encontradas diretamente sobre um determinado objeto.
- {{jsxref("Object.getPrototypeOf()")}}
- Retorna o protótipo do objeto especificado.
- {{jsxref("Object.is()")}}
- Compara se dois valores são o mesmo valor. Equivale a todos os valores de
NaN
(que diferem da Comparação de Igualdade Abstrata e da Comparação de Igualdade Estrita).
- {{jsxref("Object.isExtensible()")}}
- Determina se a extensão de um objeto é permitida.
- {{jsxref("Object.isFrozen()")}}
- Determina se um objeto foi congelado.
- {{jsxref("Object.isSealed()")}}
- Determina se um objeto está selado.
- {{jsxref("Object.keys()")}}
- Retorna uma matriz contendo os nomes de todas as propriedades de string enumeráveis do objeto fornecido.
- {{jsxref("Object.preventExtensions()")}}
- Impede qualquer extensão de um objeto.
- {{jsxref("Object.seal()")}}
- Impede que outro código exclua propriedades de um objeto.
- {{jsxref("Object.setPrototypeOf()")}}
- Define o protótipo (isto é, a propriedade interna
[[Prototype]]
).
- {{jsxref("Object.values()")}}
- Retorna uma matriz contendo os valores que correspondem a todas as propriedades de string enumeráveis do próprio objeto.
Instâncias de Object
e Object
de protótipo de objeto
Todos os objetos em JavaScript são descendentes do Object
; todos os objetos herdam métodos e propriedades de {{jsxref("Object.prototype")}}, embora eles possam ser substituídos. Por exemplo, protótipos de outros construtores substituem a propriedade constructor
e fornecer seus próprios métodos toString()
. As alterações no objeto de protótipo Object
são propagadas para todos os objetos, a menos que as propriedades e os métodos sujeitos a essas alterações sejam substituídos na cadeia de protótipos.
Propriedades (enUS)
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype', 'Properties')}}
Métodos (enUS)
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype', 'Methods')}}
Excluindo uma propriedade de um objeto
Não há nenhum método em um Objeto para excluir suas próprias propriedades (por exemplo, como Map.prototype.delete()
). Para isso, é necessário usar o operador delete.
Exemplos
Usando Object
com tipos undefined
e null
Os exemplos a seguir armazenam um Object
vazio na variável "o
":
var o = new Object();
var o = new Object(undefined);
var o = new Object(null);
Using Object
to create Boolean
objects
Os exemplos a seguir armazenam objetos {{jsxref("Boolean")}} na variável "o
":
// equivalent to o = new Boolean(true);
var o = new Object(true);
// equivalent to o = new Boolean(false);
var o = new Object(Boolean());
Especificações
Especificações |
Status |
Comentário |
{{SpecName('ES1')}} |
{{Spec2('ES1')}} |
Definição inicial. Implementado no JavaScript 1.0. |
{{SpecName('ES5.1', '#sec-15.2', 'Object')}} |
{{Spec2('ES5.1')}} |
------------------------------------------------ |
{{SpecName('ES6', '#sec-object-objects', 'Object')}} |
{{Spec2('ES6')}} |
Adicionado Object.assign , Object.getOwnPropertySymbols , Object.setPrototypeOf e Object.is |
{{SpecName('ESDraft', '#sec-object-objects', 'Object')}} |
{{Spec2('ESDraft')}} |
Adicionado Object.entries , Object.values e Object.getOwnPropertyDescriptors . |
Compatibilidade
{{Compat("javascript.builtins.Object")}}
Veja também