Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.
instanceof
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julio de 2015.
Resumen
El operadorinstanceof verifica si un objeto en su cadena de prototipos contiene la propiedadprototype de un constructor.
In this article
Sintaxis
objeto instanceof constructor
Parámetros
objetoObjeto a verificar.
constructorFunción contra la que se hará la verificación.
Descripción
Utiliceinstanceof 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 operadorinstanceof. Por ejemplo, puede especificar una cadena creada con el constructorString, 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 dethrow.
Ejemplo: Determinando sielDia es un objetoDate
El siguiente código utilizainstanceof para determinar sielDia es un objetoDate. Debido a queelDia es un objetoDate, las instrucciones de la sentencia if se ejecutan.
elDia = new Date(1995, 12, 17);if (elDia instanceof Date) { // instrucciones a ejecutar}Ejemplo: Demostrando queString yDate son del tipoObject
El siguiente código utilizainstanceof para demostrar que los objetosString yDate son también del tipoObject (éstos se derivan deObject).
miCadena = new String();miFecha = new Date();miCadena instanceof String; // devuelve truemiCadena instanceof Object; // devuelve truemiCadena instanceof Date; // devuelve falsemiFecha instanceof Date; // devuelve truemiFecha instanceof Object; // devuelve truemiFecha instanceof String; // devuelve falseEjemplo: Demostrando quemiCoche es del tipoCoche y del tipoObject
El siguiente código crea un objeto del tipoCoche y una instancia de ese tipo de objeto,miCoche. El operadorinstanceof demuestra que el objetomiCoche es del tipoCoche y del tipoObject.
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)