Rumah  >  Artikel  >  hujung hadapan web  >  Mengapa Kod JavaScript Saya Ditugaskan Daripada Membandingkan?

Mengapa Kod JavaScript Saya Ditugaskan Daripada Membandingkan?

Patricia Arquette
Patricia Arquetteasal
2024-11-02 08:51:02279semak imbas

Why Does My JavaScript Code Assign Instead of Comparing?

Memahami Perbandingan Kesaksamaan dalam JavaScript

Dalam JavaScript, perbandingan kesamaan sering menjadi punca kekeliruan, terutamanya apabila menggunakan tanda sama dengan tunggal (= ). Mari kita teliti sebab coretan kod yang disediakan dalam soalan asal tidak berkelakuan seperti yang diharapkan.

Peranan Tugasan

Tanda tunggal sama dengan (=) digunakan untuk tugasan, bukan perbandingan kesamarataan. Akibatnya, apabila anda menulis:

if (str = '')

anda sebenarnya memberikan rentetan kosong kepada pembolehubah 'str' dan bukannya menyemak nilainya untuk kesamaan.

Perbandingan Kesaksamaan Operator

Untuk membandingkan nilai bagi kesaksamaan dalam JavaScript, anda harus menggunakan tanda ganda sama (==) untuk longgar perbandingan (membolehkan untuk paksaan jenis) atau tanda sama dengan tiga kali ganda (===) untuk perbandingan yang ketat (tanpa paksaan jenis).

Melawat semula Kod

Menggantikan single tanda sama dengan double atau triple equals akan memastikan perbandingan yang diingini adalah dilakukan:

if (str === '') {
    console.log("The string cannot be blank");
} else if (str.length <= 9) {
    console.log("The string must be at least 9 characters long");
} else if (str.length <= 10) {
    console.log("The string is long enough.");
}

Penjelasan Pembetulan

Menggunakan === (perbandingan ketat) dalam kes ini menjamin bahawa nilai 'str' dibandingkan dengan rentetan kosong, mengelakkan ralat tugasan. Akibatnya, kod akan menentukan dengan tepat sama ada rentetan itu kosong, mempunyai panjang kurang daripada atau sama dengan 9 atau mempunyai panjang sehingga 10.

Atas ialah kandungan terperinci Mengapa Kod JavaScript Saya Ditugaskan Daripada Membandingkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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