Ésta es una pregunta muy básica en realidad sólo para satisfacer mi curiosidad, pero hay una manera de hacer algo como esto:Javascript instanceof Si Declaración
if(obj !instanceof Array) {
//The object is not an instance of Array
} else {
//The object is an instance of Array
}
La clave aquí es capaz de utilizar el NO! frente a instancia. Por lo general, la forma en que tengo que configurar esto es así:
if(obj instanceof Array) {
//Do nothing here
} else {
//The object is not an instance of Array
//Perform actions!
}
Y es un poco molesto tener que crear una sentencia else cuando yo simplemente quiero saber si el objeto es un tipo específico.
@ hrishikeshp19 - I Estoy bastante seguro de que necesitas los parens, lo intenté en Chrome, IE y nodo, y cada host los necesitaba. –
@ riship89 se requieren parens, prueba: '' !! obj instanceof Array'' devuelve falso (incorrecto) mientras '' !! (obj instanceof Array) '' devuelve verdadero (correcto) – zamnuts
La razón es que! obj se evalúa primero en if (! obj instanceof Array), que se evalúa como true (o false), que luego se convierte en if (bool instanceof Array), que obviamente es falso. Por lo tanto, envuélvalo entre paréntesis como se sugiere. – ronnbot