Resumen
El operador instanceof
verifica si un objeto en su cadena de prototipos contiene la propiedad prototype
de un constructor.
Sintaxis
objeto instanceof constructor
Par谩metros
objeto
- Objeto a verificar.
constructor
- Funci贸n contra la que se har谩 la verificaci贸n.
Descripci贸n
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)
Ejemplos
Tambi茅n vea los ejemplos de throw
.
Ejemplo: Determinando si 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 }
Ejemplo: Demostrando que 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
Ejemplo: Demostrando que 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)