Visit Mozilla.org

Dokumentacja języka JavaScript 1.5:Obiekty:Object:isPrototypeOf

z Mozilla Developer Center, polskiego centrum programistów Mozilli.

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...

isPrototypeOf allows you to check whether or not an object instance has a class in question as one of its parents.

For example, the following code creates a class Question and another class SecondaryQuestion that extends Question:

function Question {
  this.answer = 42;
}

function SecondaryQuestion {

}
SecondaryQuestion.prototype = new Question();

Later on down the road, if you instantiate SecondaryQuestion and need to check if it has Question as a parent class, you could do this:

var myquestion = new SecondaryQuestion();

...

if (Question.prototype.isPrototypeOf(myquestion)) {
  // do something with the question
}

This particularly comes in handy if you have a function or class method that can only accept an instance of a certain class as its parameter:

function guessAnswer(q) {
  if (Question.prototype.isPrototypeOf(q)) {
    // Try to answer the question.
    // This doesn't care if you've passed a Question or a
    // SecondaryQuestion, since they're both Questions.
  } else {
    // Get upset
  }
}