Rumah > hujung hadapan web > tutorial js > Bagaimanakah Pengendali Tilde Mempengaruhi Ungkapan Bersyarat dalam JavaScript?

Bagaimanakah Pengendali Tilde Mempengaruhi Ungkapan Bersyarat dalam JavaScript?

Susan Sarandon
Lepaskan: 2024-11-27 20:54:14
asal
245 orang telah melayarinya

How Does the Tilde Operator Affect Conditional Expressions in JavaScript?

Ungkapan Bersyarat dengan Operator Tilde Sebelumnya

Dalam JavaScript, pengendali tilde (~) boleh mendahului ungkapan untuk melakukan penolakan bitwise. Apabila bekerja dengan ungkapan bersyarat, operator ini boleh mempunyai kegunaan khusus.

Contoh Kod:

var attr = ~'input,textarea'.indexOf( target.tagName.toLowerCase() )
           ? 'value'
           : 'innerHTML'
Salin selepas log masuk

Penjelasan:

Fungsi indexOf() mengembalikan -1 jika nilai sasaran tidak ditemui. Dengan menafikan nilai ini menggunakan operator ~, kami secara berkesan menukarnya kepada truthy (sebarang nilai bukan sifar) untuk padanan dan palsu (-1) untuk bukan padanan.

Operasi Bitwise:

Dalam JavaScript, nombor secara dalaman diwakili sebagai integer 32-bit. Operator ~ membalikkan semua bit dalam operannya, menyongsangkannya dengan berkesan.

Sebagai contoh, jika nilai 'input,textarea'.indexOf( target.tagName.toLowerCase() ) ialah 1 (mewakili aksara 'i'), perwakilan binarinya ialah:

0000 0000 0000 0000 0000 0000 0000 0001
Salin selepas log masuk

Menggunakan operator ~ membalikkan semua bit, menghasilkan:

1111 1111 1111 1111 1111 1111 1111 1110
Salin selepas log masuk

Nilai yang terhasil ialah -2 dalam perwakilan pelengkap 2.

Hasil Bersyarat:

Dalam ungkapan bersyarat , nilai ~'input,textarea'.indexOf( target.tagName.toLowerCase() ) ialah dinilai untuk menentukan sama ada untuk memberikan 'nilai' atau 'innerHTML' kepada pembolehubah attr. Jika sasaran ditemui, ungkapan akan menilai kebenaran, menyebabkan 'nilai' diberikan kepada attr. Jika tidak, jika sasaran tidak ditemui, ungkapan tersebut akan dinilai sebagai palsu, menyebabkan 'innerHTML' diberikan kepada attr.

Atas ialah kandungan terperinci Bagaimanakah Pengendali Tilde Mempengaruhi Ungkapan Bersyarat dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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