Rumah > Artikel > hujung hadapan web > Mengapa Operator Double Bitwise NOT (~~) dalam JavaScript Berkelakuan Berbeza untuk Nombor Negatif?
Apakah Tujuan Double Bitwise NOT Operator (~~) dalam JavaScript?
Dalam JavaScript, "double tilde" (~ ~) operator ialah pengendali Bitwise NOT berganda. Ia berfungsi sebagai alternatif yang lebih pantas kepada kaedah Math.floor() untuk nombor positif.
Apabila digunakan pada nombor positif, ~~ melakukan operasi BUKAN mengikut bit dua kali. Ini mengakibatkan pemangkasan bahagian pecahan nombor dengan berkesan, serupa dengan Math.floor().
Sebagai contoh, ~~5.8 akan mengembalikan 5, sama seperti Math.floor(5.8).
Walau bagaimanapun, ~~ berkelakuan berbeza dengan nombor negatif. Daripada membundarkan ke bawah, ia memotong bahagian pecahan, pada asasnya mengembalikan integer ke arah sifar.
Sebagai contoh, ~~-5.8 akan mengembalikan -5, tidak seperti Math.floor(-5.8) yang membundar ke - 6.
Adalah penting untuk ambil perhatian bahawa ~~ tidak bertujuan untuk digunakan dengan nombor negatif dan tingkah lakunya untuk input negatif boleh berbeza-beza merentas persekitaran JavaScript yang berbeza. Oleh itu, apabila menggunakan nilai negatif, disyorkan untuk menggunakan Math.floor() atau kaedah lain yang sesuai untuk pembundaran secara eksplisit.
Atas ialah kandungan terperinci Mengapa Operator Double Bitwise NOT (~~) dalam JavaScript Berkelakuan Berbeza untuk Nombor Negatif?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!