Rumah hujung hadapan web tutorial js JS中typeof与instanceof的区别

JS中typeof与instanceof的区别

Jun 01, 2016 am 09:55 AM
instanceof typeof

JavaScript 中 typeof 和 instanceof 常用来判断一个变量是否为空,或者是什么类型的。但它们之间还是有区别的:
typeof
typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型。
它返回值是一个字符串,该字符串说明运算数的类型。typeof 一般只能返回如下几个结果:
number,boolean,string,function,object,undefined。我们可以使用 typeof 来获取一个变量是否存在,如 if(typeof a!="undefined"){alert("ok")},而不要去使用 if(a) 因为如果 a 不存在(未声明)则会出错,对于 Array,Null 等特殊对象使用 typeof 一律返回 object,这正是 typeof 的局限性。


instanceof
instance:实例,例子
a instanceof b?alert("true"):alert("false"); //a是b的实例?真:假
instanceof 用于判断一个变量是否某个对象的实例,如 var a=new Array();alert(a instanceof Array); 会返回 true,同时 alert(a instanceof Object) 也会返回 true;这是因为 Array 是 object 的子类。再如:function test(){};var a=new test();alert(a instanceof test) 会返回
谈到 instanceof 我们要多插入一个问题,就是 function 的 arguments,我们大家也许都认为 arguments 是一个 Array,但如果使用 instaceof 去测试会发现 arguments 不是一个 Array 对象,尽管看起来很像。
另外:
测试 var a=new Array();if (a instanceof Object) alert('Y');else alert('N');
得'Y’
但 if (window instanceof Object) alert('Y');else alert('N');
得'N'
所以,这里的 instanceof 测试的 object 是指 js 语法中的 object,不是指 dom 模型对象。
使用 typeof 会有些区别
alert(typeof(window)) 会得 object

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah yang dilakukan oleh instanceof? Apakah yang dilakukan oleh instanceof? Nov 14, 2023 pm 03:50 PM

Fungsi instanceof adalah untuk menentukan sama ada objek adalah contoh kelas tertentu, atau sama ada ia melaksanakan antara muka tertentu. instanceof ialah operator yang digunakan untuk menyemak sama ada objek adalah jenis yang ditentukan. Senario penggunaan instanceof operator: 1. Pemeriksaan jenis: boleh digunakan untuk menentukan jenis objek tertentu, untuk melaksanakan logik yang berbeza mengikut jenis yang berbeza 2. Penghakiman antara muka: boleh digunakan untuk menentukan sama ada objek melaksanakan antara muka , untuk menentukan sama ada objek melaksanakan antara muka Definisi antara muka memanggil kaedah yang sepadan 3. Transformasi ke bawah, dsb.

Bagaimana untuk menggunakan instanceof operator dalam java Bagaimana untuk menggunakan instanceof operator dalam java May 19, 2023 am 08:16 AM

Konsep 1. Operator ini digunakan untuk mengendalikan objek dan menyemak sama ada objek itu daripada jenis tertentu (jenis atau jenis antara muka). Format 2. Jika objek yang ditunjuk oleh pembolehubah di sebelah kiri kalkulator ialah objek kelas atau antara muka di sebelah kanan operator, hasilnya adalah benar. (Objectreferencevariable)instanceof(class/interfacetype) instance packagecom.verify_instanceof;publicclassTestInstanceOf{publicstaticvoidmain(String[]args){//Empat baris kod berikut digunakan untuk membuktikan: instanceof

Apakah maksud instanceof? Apakah maksud instanceof? Nov 20, 2023 pm 02:32 PM

Instanceof ialah operator dalam JavaScript, digunakan untuk mengesan sama ada atribut "prototaip" pembina muncul di mana-mana dalam rantaian prototaip objek Sintaks ialah "objek instanceof constructor", di mana objek ialah objek yang akan dikesan dan pembina ialah. objek untuk dikesan Pembina untuk diperiksa.

Apakah maksud instanceof dalam java Apakah maksud instanceof dalam java Nov 13, 2023 pm 01:52 PM

Di Java, instanceof ialah operator binari yang digunakan untuk menyemak sama ada objek ialah contoh kelas atau contoh subkelas kelas nama atau nama antara muka.

Mengapa tidak menggunakan instanceof Mengapa tidak menggunakan instanceof Nov 14, 2023 pm 04:05 PM

Sebab untuk tidak menggunakan instanceof ialah: 1. Bahasa pengaturcaraan yang anda gunakan mungkin tidak menyokong operator instanceof 2. Anda berpendapat bahawa menggunakan kaedah lain boleh mencapai keperluan dengan lebih baik, menggunakan kaedah lain untuk menyemak jenis objek menjadi lebih berkesan. atau lebih sesuai untuk keperluan anda;

Mengapakah ralat akan dilaporkan tanpa menambah instanceof? Mengapakah ralat akan dilaporkan tanpa menambah instanceof? Nov 13, 2023 pm 03:05 PM

Sebabnya ialah: Operator instanceof digunakan untuk menyemak sama ada objek ialah contoh kelas tertentu (atau kelas terbitannya). Jika objek bukan contoh kelas, maka penentuan jenis tidak boleh dibuat dan ralat dilemparkan. Untuk mengelakkan ralat ini, apabila menggunakan pengendali instanceof, anda perlu memastikan bahawa objek adalah contoh kelas. Jika anda tidak pasti tentang jenis objek, anda boleh menggunakan kaedah lain untuk menentukan jenisnya.

Mengapa kita perlu memaksa pemindahan selepas instanceof? Mengapa kita perlu memaksa pemindahan selepas instanceof? Nov 14, 2023 pm 03:43 PM

Apabila menggunakan operator instanceof untuk menyemak jenis objek, jika hasilnya benar, ini bermakna objek itu adalah contoh jenis yang ditentukan. Walau bagaimanapun, pengkompil tidak menukar objek secara automatik kepada jenis yang ditentukan, jadi pelakon diperlukan. Casting ialah operasi menukar objek daripada satu jenis kepada jenis yang lain. Selepas menggunakan pengendali instanceof, jika anda menentukan bahawa objek adalah tika jenis yang ditentukan dan ingin beroperasi dengan jenis itu, anda perlu melakukan penukaran jenis cast.

instanceof operator di Jawa instanceof operator di Jawa Sep 01, 2023 pm 08:01 PM

Operator ini hanya digunakan untuk pembolehubah rujukan objek. Operator ini menyemak sama ada objek tergolong dalam jenis tertentu (jenis kelas atau jenis antara muka). Operator instanceof ditulis sebagai -(Objectreferencevariable)instanceof(class/interfacetype) Jika objek yang dirujuk oleh pembolehubah di sebelah kiri operator melepasi semakan IS-A bagi kelas/jenis antara muka di sebelah kanan, hasilnya akan menjadi benar. Berikut ialah contoh - Contoh Demonstrasi Langsung publicclassTest{ publicstaticvoidmain(Stringargs[]){&nbs

See all articles