Saya memiliki variabel yang dapat berupa boolean false
, atau integer (termasuk 0). Saya ingin memasukkannya ke dalam pernyataan switch seperti:
switch(my_var){
case 0:
// Do something
break;
case 1:
// Do something else
break;
case false:
// Some other code
}
Dalam pengujian saya di Google Chrome, tampaknya berfungsi dengan sempurna, tetapi saya sedikit gugup untuk menggunakannya karena saya takut di beberapa browser, jika my_var
ada false
, ini mungkin menjalankan kasus pertama sejak itu 0 == false
.
Saya hanya ingin tahu apakah ada sesuatu yang resmi di JavaScript yang mengatakan pernyataan switch akan menggunakan perbandingan ketat seperti itu 0 !== false
, tetapi saya tidak dapat menemukan apa pun sendiri, dan saya tidak yakin apakah ini akan berfungsi dengan baik di mesin JavaScript yang berbeda. Adakah yang tahu jika perbandingan yang dilakukan oleh pernyataan switch dijamin ketat?
http://qfox.nl/notes/110 menjawab pertanyaan Anda. (Orang ini tahu banyak tentang seluk beluk JavaScript)
sumber
Ya,
switch
"[menggunakan] perbandingan yang ketat,===
".Sumber: switch - JavaScript | MDN
sumber