--- title: instanceof slug: Web/JavaScript/Reference/Operators/instanceof tags: - JavaScript - Operator - Relational Operators translation_of: Web/JavaScript/Reference/Operators/instanceof original_slug: Web/JavaScript/Referencia/Operadores/instanceof ---
El operador instanceof
verifica si un objeto en su cadena de prototipos contiene la propiedad prototype
de un constructor.
objeto instanceof constructor
objeto
constructor
Utilice instanceof
cuando necesite confirmar el tipo de un objeto en tiempo de ejecución. Por ejemplo, cuando controle excepciones, puede recurrir a diferentes códigos de manipulación de excepciones dependiendo del tipo de excepción tomada.
Debe especificar un objeto en el lado derecho del operador instanceof
. Por ejemplo, puede especificar una cadena creada con el constructor String
, pero no puede especificar un literal de cadena.
color1=new String("verde") color1 instanceof String // devuelve verdadero (true) color2="coral" color2 instanceof String // devuelve falso (color2 no es un objeto String)
También vea los ejemplos de {{jsxref("Sentencias/throw", "throw")}}.
elDia
es un objeto Date
El siguiente código utiliza instanceof
para determinar si elDia
es un objeto Date
. Debido a que elDia
es un objeto Date
, las instrucciones de la sentencia if se ejecutan.
elDia = new Date(1995, 12, 17) if (elDia instanceof Date) { // instrucciones a ejecutar }
String
y Date
son del tipo Object
El siguiente código utiliza instanceof
para demostrar que los objetos String
y Date
son también del tipo Object
(éstos se derivan de Object
).
miCadena = new String() miFecha = new Date() miCadena instanceof String // devuelve true miCadena instanceof Object // devuelve true miCadena instanceof Date // devuelve false miFecha instanceof Date // devuelve true miFecha instanceof Object // devuelve true miFecha instanceof String // devuelve false
miCoche
es del tipo Coche
y del tipo Object
El siguiente código crea un objeto del tipo Coche
y una instancia de ese tipo de objeto, miCoche
. El operador instanceof
demuestra que el objeto miCoche
es del tipo Coche
y del tipo Object
.
function Coche(fabricante, modelo, ejercicio) { this.fabricante = fabricante this.modelo = modelo this.ejercicio= ejercicio } miCoche = new Coche("Honda", "Accord", 1998) a = miCoche instanceof Coche // devuelve verdadero (true) b = miCoche instanceof Object // devuelve verdadero (true)