--- title: Object slug: Web/JavaScript/Reference/Global_Objects/Object tags: - Constructor - JavaScript - NeedsBrowserCompatibility - NeedsMobileBrowserCompatibility - Object - TopicStub translation_of: Web/JavaScript/Reference/Global_Objects/Object ---
{{JSRef("Global_Objects", "Object")}}

Sommari

Il costruttore Object crea un oggetto.

Sintassi

// Letterale
{ [ coppiaNomeValore1 [, coppiaNomeValore2 [, ...coppiaNomeValoreN] ] ] }

// Richiamato come una classe
new Object( [ value ] )

Parametri

coppiaNomeValore1, coppiaNomeValore2, ... coppiaNomeValoreN
Coppie formate da un nome (una stringa) e un valore (di qualsiasi tipo), dove il nome è separato dal valore con i due punti.
{
    "nome1": "valore1",
    nome2: "valore2" // Gli apici nel nome sono opzionali
};
value
Qualsiasi valore.

Descrizione

Il costruttore Object crea un oggetto avente il valore dato. Se il valore è {{jsxref("Global_Objects/null", "null")}} o {{jsxref("Global_Objects/undefined", "undefined")}}, verrà creato un oggetto vuoto; altrimenti un oggetto del tipo corrispondente al valore dato. Se il valore è già un oggetto, verra restituito senza alcuna modifica.

Quando richiamato come normale funzione, il comportamento di Object() è identico a new Object().

Proprietà del costruttore Object

Object.length
Ha valore pari a 1.
{{jsxref("Object.prototype")}}
Permette di aggiungere altre proprietà ad ogni oggetto di tipo Object.

{{ jsOverrides("Function", "Properties", "prototype") }}

Metodi del costruttore Object

{{jsxref("Object.assign()")}} {{experimental_inline}}
Crea un nuovo oggetto copiando i valori di tutti le proprietà enumerabili da uno o più oggetti.
{{jsxref("Object.create()")}}
Crea un nuovo oggetto utilizzando il prototipo e le proprietà specificate.
{{jsxref("Object.defineProperty()")}}
Aggiunge una proprietà descritta dall'oggetto specificato.
{{jsxref("Object.defineProperties()")}}
Aggiunge più proprietà descritte dall'oggetto specificato.
{{jsxref("Object.freeze()")}}
Congela un oggetto: le sue proprietà non possono più essere cancellate o modificate.
{{jsxref("Object.getOwnPropertyDescriptor()")}}
Restituisce un oggetto che descriva la proprietà specificata.
{{jsxref("Object.getOwnPropertyNames()")}}
Restituisce un array contenente i nomi di tutte le proprietà (enumerabili e non-enumerabili) dell'oggetto specificato.
{{jsxref("Object.getPrototypeOf()")}}
Restituisce il prototipo dell'oggetto specificato.
{{jsxref("Object.is()")}} {{ experimental_inline() }}
Determina se due valori sono o no uguali (quindi lo stesso oggetto).
{{jsxref("Object.isExtensible()")}}
Determina se è permesso estendere un oggetto.
{{jsxref("Object.isFrozen()")}}
Determina se un oggetto è stato congelato.
{{jsxref("Object.isSealed()")}}
Determina se un oggetto è stato sigillato.
{{jsxref("Object.keys()")}}
Restituisce un array contenente i nomi di tutte le proprietà enumerabili dell'oggetto.
{{jsxref("Object.observe()")}} {{experimental_inline}}
Osserva i cambiamenti di un oggetto in modo asincrono.
{{jsxref("Object.preventExtensions()")}}
Impedisce ad un oggetto di essere esteso.
{{jsxref("Object.seal()")}}
Impedisce di eliminare le proprietà di un oggetto.
{{jsxref("Object.setPrototypeOf()")}} {{experimental_inline}}

Imposta i prototipo (quindi la proprietà intena ​[[Prototype]]) di un oggetto.

{{jsOverrides("Function", "Methods", "create", "defineProperty", "defineProperties", "getOwnPropertyDescriptor", "getPrototypeOf")}}

Instanze di Object e l'oggetto prototipo Object

In JavaScript, tutti gli oggetti sono discendenti di Object; tutti gli oggetti ereditano metodi e proprietà di {{jsxref("Object.prototype")}}, anche se queste possono essere sovrascritte. Per esempio, i prototpipi degli altri costruttori sovrascrivono la proprietà constructor e forniscono un loro metodo toString(). I cambiamenti al prototipo di Object venogno estesi a tutti gli oggetti, eccetto quelli che sovrascrivono le proprietà e i metodi cambiati.

Poprietà

{{page('/it/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype', 'Properties') }}

Metodi

{{page('/it/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype', 'Methods') }}

Esempi

Usare Object con i valori null e undefined

Questi esempi restituiscono tutti lo stesso oggetto:

var o = {};
var o = new Object();
var o = new Object(undefined);
var o = new Object(null);

Usare Object per creare oggetti Boolean

I seguenti esempi assegnano alla variabile o un oggetto {{jsxref("Global_Objects/Boolean", "Boolean")}}:

var o = new Object(true);
// Equivalente a new Boolean(true)
var o = new Object(Boolean());
// Equivalente a new Boolean(false)

Specifiche

Specifica Stato Commenti
ECMAScript 1st Edition. Implemented in JavaScript 1.0 Standard Definizione iniziale.
{{SpecName('ES5.1', '#sec-15.2', 'Object')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-object-objects', 'Object')}} {{Spec2('ES6')}}  

Compatibilità con i browser

{{ CompatibilityTable() }}

Funzionalità Chrome Firefox (Gecko) Internet Explorer Opera Safari
Supporto di base {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }}
Funzionalità Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Supporto di base {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }} {{ CompatVersionUnknown() }}