Operator instanceof

UWAGA: Tłumaczenie tej strony nie zostało zakończone.
Może być ona niekompletna lub wymagać korekty.
Chcesz pomóc? | Dokończ tłumaczenie | Sprawdź ortografię | Więcej takich stron+.

Podsumowanie

Operator instanceof zwraca true, jeżeli określony obiekt jest obiektem określonego typu .

Operator
Zaimplementowane w: JavaScript 1.4

Składnia

objectName  instanceof  objectType

Parametry

objectName
Nazwa obiektu do porównania dla objectType.
objectType
Typ obiektu.

Opis

instanceof jest używane w celu potwierdzenia typu obiektu w trakcie działania programu. Na przykład, podczas przechwytywania wyjątków, można korzystać z osobnych implementacji kodu obsługujacego wyjątki, w zależności od rodzaju rzuconego wyjątku.

Należy określić obiekt po prawej stronie operatora instanceof. Na przykład, można określić string utworzony przy pomocy konstruktora String, ale nie ciąg wprost.

color1=new String("green")
color1 instanceof String // returns true
color2="coral"
color2 instanceof String // returns false (color2 is not a String object)

Przykłady

Zobacz także przykłady dla throw.

Przykład: Określanie czy theDay jest obiektem typu Date

Następujacy kod używa instanceof do określenia czy theDay jest obiektem typu Date. Ponieważ zmiennej theDay został przypisany obiekt typu Date, instrukcje w bloku if zostaną wykonane.

theDay=new Date(1995, 12, 17)
if (theDay instanceof Date) {
   // instrukcja do wykonania
} 

Przykład: Demonstracja, który obiekt String i Date są typu Object

Następujący kod stosuje instanceof do zademonstrowania, które obiekty String i Date są także typu Object (czerpane są one z Object).

myString=new String()
myDate=new Date()

myString instanceof String // zwraca true
myString instanceof Object // zwraca true
myString instanceof Date   // zwraca false

myDate instanceof Date     // zwraca true
myDate instanceof Object   // zwraca true
myDate instanceof String   // zwraca false

Przykład: mycar jest jednocześnie typem Car i Object

Poniższy kod tworzy obiekt typu Car, następnie instancję tego typu: mycar.
Użycie instanceof pokazuje, że mycar jest zarówno typem Car, jak i Object.

function Car(make, model, year) {
   this.make = make
   this.model = model
   this.year = year
}
mycar = new Car("Honda", "Accord", 1998)
a=mycar instanceof Car    // zwraca true
b=mycar instanceof Object // zwraca true

 

 

Autorzy i etykiety dokumentu

 Autorzy tej strony: mmiarecki, teoli, Mgjbot, Ipluta, Ptak82, Internauta1024A
 Ostatnia aktualizacja: mmiarecki,