


Bagaimana untuk menentukan sama ada fasa adalah sama dalam JavaScript
Cara menentukan kesamaan dalam JavaScript: 1. Gunakan operator "==" atau "!=" untuk membandingkan sama ada nilai kedua-dua operan adalah sama 2. Gunakan "===" atau "! ==" operator, membandingkan sama ada nilai dua operan adalah sama dan menyemak sama ada jenisnya adalah sama.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
JavaScript menentukan kesaksamaan
Dalam JavaScript, anda boleh menggunakan ==
, ===
, !=
, !==
pengendali untuk menentukan kesamaan atau ketidaksamaan
等值检测运算符 | 说明 |
---|---|
==(相等) | 比较两个操作数的值是否相等 |
!=(不想等) | 比较两个操作数的值是否不相等 |
===(全等) | 比较两个操作数的值是否相等,同时检测它们的类型是否相同 |
!==(不全等) | 比较两个操作数的值是否不相等,同时检测它们的类型是否不相同 |
Dalam operasi kesamaan, isu-isu berikut perlu diambil perhatian:
Jika operan Jika ia adalah Nilai Boolean, ia ditukar kepada nilai berangka terlebih dahulu, di mana salah ditukar kepada 0 dan benar ditukar kepada 1.
Jika satu operan ialah rentetan dan satu lagi operan ialah nombor, cuba tukar rentetan itu kepada nombor dahulu.
Jika satu operan ialah rentetan dan satu lagi operan ialah objek, cuba tukar objek itu kepada rentetan dahulu.
Jika satu operan ialah nombor dan satu lagi operan ialah objek, cuba tukar objek itu kepada nombor dahulu.
Jika kedua-dua operan ialah objek, alamat rujukan akan dibandingkan. Jika alamat rujukan adalah sama, ia adalah sama;
Contoh 1
Berikut ialah perbandingan kesamaan operan khas.
console.log("1" == 1); //返回true。字符串被转换为数字 console.log(true == 1); //返回true。true被转换为1 console.log(false == 0); //返回true。false被转换为0 console.log(null == 0); //返回false console.log(undefined == 0); //返回false console.log(undefined == null); //返回true console.log(NaN == "NaN"); //返回false console.log(NaN ==1); //返回false console.log(NaN == NaN); //返回false console.log(NaN != NaN); //返回true
NaN tidak sama dengan mana-mana nilai, termasuk dirinya sendiri. Nilai null dan undefined adalah sama, tetapi ia adalah jenis data yang berbeza. Dalam perbandingan kesamaan, null dan undefined tidak dibenarkan untuk ditukar kepada jenis nilai lain.
Contoh 2
Nilai dua pembolehubah berikut adalah sama.
var a = "abc" + "d"; var b = "a" + "bcd"; console.log(a == b); //返回true
Operasi perbandingan kesamaan nilai berangka dan nilai Boolean adalah agak cekap, manakala rentetan perlu dibandingkan aksara mengikut watak, dan kecekapan operasi perbandingan kesamaan adalah agak rendah.
Dalam operasi kongruen, isu berikut perlu diberi perhatian:
Jika kedua-dua operan adalah nilai mudah, selagi nilainya sama dan jenisnya adalah sama, Sama sahaja.
Jika satu operan ialah nilai mudah dan satu lagi operan ialah objek komposit, ia tidak kongruen.
Jika kedua-dua operan ialah objek komposit, bandingkan sama ada alamat rujukan adalah sama.
Contoh 3
Berikut ialah perbandingan kongruen bagi operan khas.
console.log(null === undefined); //返回false console.log(0 === "0"); //返回false console.log(0 === false); //返回false
Contoh 4
Berikut ialah perbandingan dua objek Memandangkan kedua-duanya merujuk kepada alamat yang sama, benar dikembalikan.
var a = {}; var b = a; console.log(a === b); //返回true
Walaupun dua objek berikut mempunyai struktur yang sama, ia mempunyai alamat yang berbeza, jadi ia tidak kongruen.
var a = {}; var b = {}; console.log(a === b); //返回false
Contoh 5
Untuk objek komposit, alamat rujukan terutamanya dibandingkan, dan nilai objek tidak dibandingkan.
var a = new String("abcd); //定义字符串“abcd”对象 var b = new String("abcd); //定义字符串“abcd”对象 console.log(a === b); //返回false console.log(a == b); //返回false
Dalam contoh di atas, nilai kedua-dua objek adalah sama, tetapi alamat rujukan adalah berbeza, jadi mereka tidak mahu menunggu dan tidak sama. Oleh itu, untuk objek komposit, hasil operasi kesamaan == dan kongruen === adalah sama.
Contoh 6
Untuk nilai mudah, selagi ia mempunyai jenis yang sama dan nilai yang sama, ia adalah kongruen, tanpa mengira perubahan proses operasi ungkapan atau pembolehubah alamat rujukan.
var a = "1" + 1; var b = "11"; console.log(a ===b); //返回true
Contoh 7
Ungkapan (a>b || a==b) tidak betul-betul sama dengan ungkapan (a>=b).
var a = 1; var b = 2; console.log((a > b || a == b) == (a >= b)); //返回true,此时似乎相等
Jika null dan undefined masing-masing ditugaskan kepada pembolehubah a dan b, nilai palsu dikembalikan, menunjukkan bahawa kedua-dua ungkapan itu tidak setara sepenuhnya.
var a = null; var b = undefined; console.log((a > b || a == b) == (a >= b)); //返回false,表达式的值并非相等
Oleh kerana null == undefined adalah sama dengan benar, nilai pulangan bagi ungkapan (a > b || a == b) adalah benar, tetapi nilai pulangan bagi ungkapan null > = undefined adalah palsu.
[Cadangan berkaitan: tutorial pembelajaran javascript]
Atas ialah kandungan terperinci Bagaimana untuk menentukan sama ada fasa adalah sama dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

React adalah rangka kerja front-end untuk membina antara muka pengguna; Rangka kerja back-end digunakan untuk membina aplikasi sisi pelayan. React menyediakan kemas kini UI yang komponen dan cekap, dan Rangka Kerja Backend menyediakan penyelesaian perkhidmatan backend lengkap. Apabila memilih timbunan teknologi, keperluan projek, kemahiran pasukan, dan skalabiliti harus dipertimbangkan.

Hubungan antara HTML dan React adalah teras pembangunan front-end, dan mereka bersama-sama membina antara muka pengguna aplikasi web moden. 1) HTML mentakrifkan struktur kandungan dan semantik, dan React membina antara muka dinamik melalui komponenisasi. 2) Komponen React Gunakan sintaks JSX untuk membenamkan HTML untuk mencapai rendering pintar. 3) Kitaran Hayat Komponen Menguruskan Rendering HTML dan Kemas kini secara dinamik mengikut keadaan dan atribut. 4) Gunakan komponen untuk mengoptimumkan struktur HTML dan meningkatkan keupayaan. 5) Pengoptimuman prestasi termasuk mengelakkan penyampaian yang tidak perlu, menggunakan atribut utama, dan menjaga tanggungjawab tunggal komponen.

React adalah alat pilihan untuk membina pengalaman front-end interaktif. 1) React memudahkan pembangunan UI melalui komponen dan DOM maya. 2) Komponen dibahagikan kepada komponen fungsi dan komponen kelas. Komponen fungsi adalah lebih mudah dan komponen kelas menyediakan lebih banyak kaedah kitaran hayat. 3) Prinsip kerja React bergantung kepada algoritma DOM dan perdamaian maya untuk meningkatkan prestasi. 4) Pengurusan negeri menggunakan useState atau ini. Kaedah kitaran hayat seperti ComponentDidMount digunakan untuk logik tertentu. 5) Penggunaan asas termasuk membuat komponen dan pengurusan negeri, dan penggunaan lanjutan melibatkan cangkuk tersuai dan pengoptimuman prestasi. 6) Kesalahan biasa termasuk kemas kini status yang tidak betul dan isu prestasi, kemahiran debugging termasuk menggunakan reactdevtools dan sangat baik

React adalah perpustakaan JavaScript untuk membina antara muka pengguna, dengan komponen terasnya dan pengurusan negeri. 1) Memudahkan pembangunan UI melalui komponen dan pengurusan negeri. 2) Prinsip kerja termasuk perdamaian dan rendering, dan pengoptimuman dapat dilaksanakan melalui React.Memo dan Usememo. 3) Penggunaan asas adalah untuk membuat dan membuat komponen, dan penggunaan lanjutan termasuk menggunakan cangkuk dan konteksapi. 4) Kesalahan biasa seperti kemas kini status yang tidak betul, anda boleh menggunakan ReactDevTools untuk debug. 5) Pengoptimuman prestasi termasuk menggunakan react.memo, senarai virtualisasi dan codesplitting, dan menyimpan kod yang boleh dibaca dan dikekalkan adalah amalan terbaik.

React menggabungkan JSX dan HTML untuk meningkatkan pengalaman pengguna. 1) JSX membenamkan HTML untuk menjadikan pembangunan lebih intuitif. 2) Mekanisme DOM maya mengoptimumkan prestasi dan mengurangkan operasi DOM. 3) UI pengurusan berasaskan komponen untuk meningkatkan kebolehkerjaan. 4) Pengurusan negeri dan pemprosesan acara meningkatkan interaktiviti.

Komponen React boleh ditakrifkan oleh fungsi atau kelas, merangkumi logik UI dan menerima data input melalui prop. 1) Tentukan komponen: Gunakan fungsi atau kelas untuk mengembalikan elemen bertindak balas. 2) Rendering Component: React Call Render Kaedah atau Melaksanakan Komponen Fungsi. 3) Komponen multiplexing: Lulus data melalui prop untuk membina UI yang kompleks. Pendekatan kitaran hayat komponen membolehkan logik dilaksanakan pada peringkat yang berbeza, meningkatkan kecekapan pembangunan dan pemeliharaan kod.

React Mode Strict adalah alat pembangunan yang menyoroti isu -isu yang berpotensi dalam aplikasi React dengan mengaktifkan cek tambahan dan amaran. Ia membantu mengenal pasti kod warisan, hayat yang tidak selamat, dan kesan sampingan, menggalakkan amalan reaksi moden.

Serpihan bertindak balas membolehkan kumpulan kanak -kanak tanpa nod dom tambahan, meningkatkan struktur, prestasi, dan kebolehaksesan. Mereka menyokong kekunci untuk rendering senarai yang cekap.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

Dreamweaver Mac版
Alat pembangunan web visual