Rumah > hujung hadapan web > tutorial js > Adakah 0 dan -0 Dianggap Sama dalam JavaScript?

Adakah 0 dan -0 Dianggap Sama dalam JavaScript?

Susan Sarandon
Lepaskan: 2024-11-20 14:39:22
asal
1007 orang telah melayarinya

Are  0 and -0 Considered Equal in JavaScript?

Adakah 0 dan -0 sama dalam JavaScript?

Walaupun terdapat perbezaan yang dibuat dalam spesifikasi ECMAScript 5.1, 0 dan -0 menilai kepada benar menggunakan kesaksamaan yang ketat dalam JavaScript.

Mengapa ini?

JavaScript menggunakan standard IEEE 754 untuk perwakilan berangka. Mengikut piawaian ini, sifar yang ditandatangani boleh wujud dalam dua bentuk: 0 (sifar positif) dan -0 (sifar negatif). Walau bagaimanapun, pembahagian dengan 0 atau -0 menghasilkan ∞ dan -∞, masing-masing, bukannya tidak ditentukan.

Secara teknikal, perbezaan antara 0 dan -0 ini adalah penting. Walau bagaimanapun, JavaScript memberikan pengecualian dalam algoritma kesamaan ketatnya. Bahagian 11.9.6 dengan jelas menyatakan bahawa 0 dan -0 dianggap sama dalam perbandingan kesamaan yang ketat.

Pengecualian ini sejajar dengan tanggapan logik untuk menganggap 0 dan -0 sebagai setara. Selain itu, ia memudahkan pembangunan dengan menghapuskan keperluan untuk mempertimbangkan perbezaan ini dalam kod.

Nota:

ES2015 memperkenalkan Object.is sebagai kaedah perbandingan baharu. Tidak seperti pengendali kesaksamaan yang longgar dan ketat, Object.is dengan jelas membezakan antara 0 dan -0:

Object.is(-0, +0); // false
Salin selepas log masuk

Atas ialah kandungan terperinci Adakah 0 dan -0 Dianggap Sama dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan