en vez de
El operando del lado izquierdo (LHS) es el objeto real que se prueba con el operando del lado derecho (RHS) que es el constructor real de una clase. La definición básica es:
Checks the current object and returns true if the object
is of the specified object type.
Aquí hay algunos buenos ejemplos y aquí hay un ejemplo tomado directamente del sitio de desarrolladores de Mozilla :
var color1 = new String("green");
color1 instanceof String; // returns true
var color2 = "coral"; //no type specified
color2 instanceof String; // returns false (color2 is not a String object)
Una cosa que vale la pena mencionar es que se instanceofevalúa como verdadero si el objeto hereda del prototipo de la clase:
var p = new Person("Jon");
p instanceof Person
Eso es p instanceof Personcierto ya que phereda de Person.prototype.
Por solicitud del OP
He agregado un pequeño ejemplo con un código de muestra y una explicación.
Cuando declaras una variable, le das un tipo específico.
Por ejemplo:
int i;
float f;
Customer c;
Lo anterior se muestran algunas variables, a saber i, fy c. Los tipos son integer, floaty una definida por el usuario Customertipo de datos. Tipos como el anterior podrían ser para cualquier idioma, no solo JavaScript. Sin embargo, con JavaScript cuando declara una variable que no define explícitamente un tipo var x, x podría ser un número / cadena / un tipo de datos definido por el usuario. Entonces, lo que instanceofhace es verificar el objeto para ver si es del tipo especificado, por lo que desde arriba Customertomamos el objeto que podríamos hacer:
var c = new Customer();
c instanceof Customer; //Returns true as c is just a customer
c instanceof String; //Returns false as c is not a string, it's a customer silly!
Arriba hemos visto que cse declaró con el tipo Customer. Lo hemos renovado y comprobado si es de tipo Customero no. Claro que es cierto. Luego, aún usando el Customerobjeto, verificamos si es a String. No, definitivamente no Stringhemos renovado un Customerobjeto, no un Stringobjeto. En este caso, devuelve falso.
¡Es realmente así de simple!