Object
Konstruktor Object tworzy wrapper obiektu.
Składnia
// Notacja literałowa
{ [ paraWartoscNazwa1[, paraWartoscNazwa2[, ...paraWartoscNazwaN] ] ] }
// Wywoływany jako konstruktor
new Object([wartosc])
Parametry
paraWartoscNazwa1, paraWartoscNazwa2, ... paraWartoscNazwaN
- Pary nazw (string) oraz wartości (jakakolwiek wartość) przyczym nazwa oddzielona jest od wartości dwukropkiem.
wartosc
- Jakakolwiek wartość.
Opis
Kostruktor obiektu tworzy wrapper dla danej wartości. Jeżeli podana wartość to null
albo undefined
, konstruktor stworzy i zwróci pusty obiekt. W przeciwnym razie stworzy i zwróci obiekt o takim samym typie jak podana wartość. Jeżeli podana wartość jest obiektem to konstruktor zwróci ten właśnie obiekt.
Zobacz również Inicjator obiektu / notacja literałowa.
Właściwości
Object.length
- Przyjmuje wartość 1.
Object.prototype
(en-US)- Pozwala na dodawanie właściwości i metod do wszystkich obiektów typu Object.
Metody
Object.assign()
- Kopiuje wszystkie własne właściwości z jednego lub więcej obiektów żródłowych do obiektu docelowego.
Object.create()
(en-US)- Tworzy nowy obiekt z podanym prototypem oraz właściwościami
Object.defineProperty()
(en-US)- Dodaje do obiektu wymienioną właściwość opisywaną przez podany deskryptor.
Object.defineProperties()
(en-US)- Dodaje do obiektu wymienione właściwości opisywane przez podane deskryptory.
Object.freeze()
- Zamraża obiekt. Uniemożliwia usuwanie oraz modyfikowanie jego właściwości.
Object.getOwnPropertyDescriptor()
- Zwraca z obiektu deskryptor dla wymienionej właściwości.
Object.getOwnPropertyNames()
(en-US)- Zwraca tablicę zawierającą nazwy wszystkich własnych właściwości obiektu. (Zarówno przeliczalnych jak i nieprzeliczalnych)
Object.getOwnPropertySymbols()
(en-US)- Zwraca tablicę zawierającą wszystkie własne właściwości-symbole danego obiektu
Object.getPrototypeOf()
(en-US)- Zwraca prototyp określonego obiektu.
Object.is()
(en-US)- Sprawdza czy dwie podane wartości są takie same.
Object.isExtensible()
(en-US)- Sprawdza czy obiekt można rozszerzyć.
Object.isFrozen()
(en-US)- Sprawdza czy obiekt jest zamrożony.
Object.isSealed()
(en-US)- Sprawdza czy obiekt jest zapieczętowany.
Object.keys()
(en-US)- Zwraca tablicę zawierającą nazwy wszystkich własnych właściwości obiektu. (Tylko przeliczalnych)
Object.preventExtensions()
(en-US)- Zabopiega rozszerzaniu obiektu (tj. dodawaniu właściwości).
Object.seal()
- Zapieczętowuje obiekt, zapobiegając dodawaniu oraz usuwaniu jego właściwości.
Object.setPrototypeOf()
(en-US)- Ustawia prototyp obiektu.
Object.values()
(en-US) Experimental- Zwraca tablicę zawierającą wszystkie własne, przeliczalne wartości obiektu.
Instancje i prototyp Object
W Javascript, wsyzstkie obiekty pochodzą od obiektu Object
, tymsamym dziedziczą metody i właściwości z Object.prototype
(en-US), jednak mogą być one nadpisane. Na przykład, prototypy innych konstruktorów nadpisują właściwość constructor
oraz metody toString
()
. Wszelkie zmiany w prototypie Object
są przekazywane do wszystkich obiektów, chyba że właściwości lub metody do których zmiany się odnośiły zostały gdzieś po drodze nadpisane.
Właściwości
Metody
Przykłady
Używanie typów null
i undefined
W poniższych przykładach zmienna o przechowuje pusty obiekt Object
:
var o = new Object();
var o = new Object(undefined);
var o = new Object(null);
Tworzenie obiektu Boolean
W poniższych przykładach zmienna o przechowuje obiekty Boolean
:
// równoznaczne z: o = new Boolean(true);
var o = new Object(true);
// równoznaczne z: o = new Boolean(false);
var o = new Object(Boolean());
Specyfikacje
Specification | Status | Comment |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Początkowa definicja. Zaimplementowana w JavaScript 1.0. |
ECMAScript 5.1 (ECMA-262) The definition of 'Object' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Object' in that specification. |
Standard | Dodano Object.assign, Object.getOwnPropertySymbols, Object.setPrototypeOf, Object.is |
ECMAScript (ECMA-262) The definition of 'Object' in that specification. |
Living Standard | Dodano Object.entries, Object.values oraz Object.getOwnPropertyDescriptors. |
Kompatybilność z przeglądarką
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |