Resumen
El operador instanceof
devuelve verdadero si el objeto especificado es del tipo especificado.
Sintaxis
nombreObjeto
instanceof
tipoObjeto
Parámetros
-
nombreObjeto
-
Nombre del objeto cuyo tipo se compara con
tipoObjeto
.
-
tipoObjeto
- Tipo de objeto.
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
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)