Dalam operasi logik JavaScript, soalan kecil tentang --c dan c--.
正歌
正歌 2018-03-26 17:19:17
0
5
1618

Guru Han berkata:

<script type=text/javascript>

var a = 3;

var b = 4;

var c = 1;

if ( a < b && --c && ++a)

{

window.alert("OK")

}

window.alert(c) // c = 0

window.alert(a) // a =3

that If "--c" ditukar kepada "c--"", nilai c juga 0. Kenapa nilai tukar kepada 4?

Saya harap guru dapat menjawabnya, terima kasih!

正歌
正歌

membalas semua(4)
一切近乎完美

--c dikira dahulu dan kemudian ditugaskan kepada c iaitu bunuh dahulu dan lapor kemudian Apabila anda membunuhnya, maharaja belum tahu dan fikir dia belum mati, jadi c masih yang asli. Hanya selepas melaporkan bahawa dia tahu bahawa dia Sudah mati, c dikurangkan satu pada masa ini.

Dan c-- ditugaskan kepada c selepas penolakan Pada masa itu, c adalah kurang satu, yang bermaksud maharaja secara peribadi mengawasi pelaksanaan.


 

Untuk --c

a < b benar

--c c pengurangan dahulu c=0 salah (0 adalah palsu, bukan-0 adalah benar)

a<b&&--c salah kemudian && akan dicetuskan "Short litar" tidak melaksanakan ++a

semua c=0, a=3

untuk c--

a < b true

c-- c mula-mula menentukan benar dan salah dan kemudian mengecil sendiri, c=1 kerana semua penghakiman adalah benar Maka c pengurangan

a<b&&--c Benar tidak akan mencetuskan "litar pintas" && Laksanakan dan hakim ++a

Jadi c=0, a=4

  • balas Terima kasih, saya faham.
    正歌 pengarang 2018-03-27 11:08:21
一生何求

--Apabila c++, sebelah kiri ungkapan adalah palsu, dan ++a di sebelah kanan tidak melakukan operasi, jadi nilai a masih 3

Apabila c++, sebelah kiri ungkapan adalah benar, jadi ++a di sebelah kanan masih perlu melakukan operasi, jadi nilai a Nilai menjadi 4

正歌

<script type=text/javascript>

var a = 3;

var b = 4;

var c = 1;

if ( a < b && c-- && ++a);/ /Pada masa ini, nilai c juga adalah 0, yang juga sepatutnya palsu ++a tidak boleh dikira, jadi nilai a masih harus 3. Mengapa ia dikira?

{

window.alert("OK")

}

window.alert(c) // c = 0

window.alert(a) // a =3


Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!