contoh
Operan Sisi Tangan Kiri (LHS) adalah objek aktual yang sedang diuji ke operan Sisi Tangan Kanan (RHS) yang merupakan konstruktor aktual dari suatu kelas. Definisi dasarnya adalah:
Checks the current object and returns true if the object
is of the specified object type.
Berikut adalah beberapa contoh bagus dan berikut adalah contoh yang diambil langsung dari situs pengembang 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)
Satu hal yang layak disebutkan adalah nilai instanceof
true jika objek mewarisi dari prototipe kelas:
var p = new Person("Jon");
p instanceof Person
Itu p instanceof Person
benar karena p
mewarisi dari Person.prototype
.
Sesuai permintaan OP
Saya telah menambahkan contoh kecil dengan beberapa kode sampel dan penjelasan.
Ketika Anda mendeklarasikan variabel, Anda memberinya jenis tertentu.
Misalnya:
int i;
float f;
Customer c;
Di atas menunjukkan beberapa variabel, yaitu i
, f
, dan c
. Jenisnya adalah integer
, float
dan Customer
tipe data yang ditentukan pengguna . Jenis seperti di atas bisa untuk bahasa apa saja, bukan hanya JavaScript. Namun, dengan JavaScript saat Anda mendeklarasikan variabel yang tidak Anda tentukan jenisnya secara eksplisit var x
,, x bisa berupa angka / string / tipe data yang ditentukan pengguna. Jadi apa yang instanceof
dilakukannya adalah memeriksa objek untuk melihat apakah itu dari tipe yang ditentukan sehingga dari atas mengambil Customer
objek yang bisa kita lakukan:
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!
Di atas kita telah melihat yang c
dideklarasikan dengan tipe Customer
. Kami sudah baru dan memeriksa apakah itu tipe Customer
atau tidak. Tentu, itu mengembalikan benar. Kemudian masih menggunakan Customer
objek yang kita periksa apakah itu a String
. Tidak, jelas bukan String
kita yang baru saja meluncurkan Customer
objek, bukan String
objek. Dalam hal ini, ia mengembalikan false.
Sesederhana itu!