javascript - Proses pelaksanaan dalam z=z=z++
滿天的星座
滿天的星座 2017-07-05 10:50:36
0
6
981
var z = 0;
z=z=z++;
alert(z);

Tetingkap pop timbul ialah 0, mengapa?

Ikuti

var z = 0;
z++;z=z;
alert(z);

Perbezaannya?

滿天的星座
滿天的星座

membalas semua(6)
小葫芦

Saya ingin tahu sama ada anda melakukan ini untuk melakukan soalan atau sama ada anda telah melihat pengarang menggunakan kaedah penulisan ini dalam kod projek sumber terbuka Jika ia adalah untuk melakukan soalan atau ujian bertulis, saya cadangkan anda tidak menganggap perkara tersebut sekolah atau syarikat. Oleh kerana soalan ini tidak bermakna , swift3 malah mengalih keluar operator ++, dan ia tidak berbaloi untuk membuang masa pada ciri sintaks yang mengelirukan.

大家讲道理

Dua mata:

  1. a = a++ ditugaskan dahulu dan kemudian dinaikkan

  2. Ungkapan tugasan mempunyai nilai pulangan, yang dirujuk sebagai nilai ungkapan

z=z=z++; 

Ia bersamaan dengan memberikan nilai ungkapan "z=z++" kepada z, dan nilai "z=z++" adalah sama dengan "z++" terlebih dahulu menggunakan nilai semasa z dan kemudian menambahnya

给我你的怀抱

Penambahan pasca: Ungkapan seperti
n++ akan mengembalikan salinan nilai asal n, dan kemudian nilai asal n++
n = n++ Keutamaan pengendali pasca kenaikan adalah lebih tinggi daripada tugasan
Jadi sebelah kanan = akan Menaikkan n dan mengembalikan salinan nilai asal n
Kemudian lakukan operasi tugasan untuk menetapkan nilai asal n kepada n, jadi nilai n kekal tidak berubah

阿神

Logik

z++是个表达式,表达式的结果还是z,所以 z=z++相当于z=z 啥也没做,
你要了解下 z++ adalah untuk mengembalikan nilai pembolehubah terlebih dahulu dan kemudian menambahnya.

Atau anda boleh menggunakan ++z, pra-kenaikan adalah untuk menaikkan diri sendiri dahulu, dan kemudian kembalikan hasilnya selepas kenaikan automatik

我想大声告诉你

bersamaan dengan

a=z++;
z=a;
z=z;
阿神

++ dan = masalah dengan susunan operasi Adalah disyorkan untuk melihat keutamaan operasi dan tugasan

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan