Pernyataan Switch JavaScript

switch 语句用于基于不同条件执行不同动作。

Pernyataan Switch JavaScript

请使用 switch 语句来选择多个需被执行的代码块之一。

语法学

switch(ekspresi) {
     case n:
        Kode blok
        break;
     case n:
        Kode blok
        break;
     default:
        Kode blok default
} 

Pengertian kode:

  • Hitung ekspresi switch sekali
  • Bandingkan nilai ekspresi dengan nilai setiap case
  • Jika ada match, eksekusi kode yang berhubungan

Contoh

Method getDay() mengembalikan angka nama minggu antara 0 dan 6 (weekday number).

(Sunday=0, Monday=1, Tuesday=2 ..)

Pada contoh ini, digunakan angka nama minggu untuk menghitung nama minggu:

switch (new Date().getDay()) {
    case 0:
        day = "Hari Minggu";
        break;
    case 1:
        day = "Hari Senin";
         break;
    case 2:
        day = "Hari Selasa";
         break;
    case 3:
        day = "Hari Rabu";
         break;
    case 4:
        day = "Hari Kamis";
         break;
    case 5:
        day = "Hari Jumat";
         break;
    case 6:
        day = "Hari Sabtu";
} 

Hasilnya akan menjadi:


Coba sendiri

Kata kunci break

Jika JavaScript mendeteksi break Kata kunci, yang akan keluar dari kode blok switch.

Hal ini akan menghentikan eksekusi kode lain di kode blok dan pengujian case.

Jika menemukan match dan menyelesaikan tugas, berhenti eksekusi secara acak (break). Tidak perlu tes lebih lanjut.

break Dapat menghemat waktu eksekusi dalam jumlah besar, karena ia akan "abaikan" eksekusi kode lain di kode blok switch.

Jangan pusing break di case terakhir di kode blok switch. Kode blok akan berakhir secara alami di sini.

Kata kunci default

default Kata kunci menentukan kode yang dijalankan saat tidak ada match case:

Contoh

getDay() Method mengembalikan angka nama minggu antara 0 dan 6.

Jika hari ini bukan Sabtu (6) atau Minggu (0), tampilkan pesan default:

switch (new Date().getDay()) {
    case 6:
        text = "Hari ini adalah hari Sabtu";
        break; 
    case 0:
        text = "Hari ini adalah hari Minggu";
        break; 
    default: 
        text = "Tunggu minggu ini~";
} 

Hasil text adalah:


Coba sendiri

Defaultcase yang ada tidak harus menjadi case terakhir di kode blok switch:

Contoh

switch (new Date().getDay()) {
    default: 
        text = "Tunggu minggu ini!";
         break;
    case 6:
        text = "Hari ini adalah hari Sabtu";
        break; 
    case 0:
        text = "Hari ini adalah hari Minggu";
} 

Coba sendiri

Jika default Jangan lupa gunakan break untuk menutup case default di kode blok switch.

Kode blok yang biasa

Kadang-kadang Anda memerlukan case yang berbeda untuk menggunakan kode yang sama.

Pada contoh ini, case 4 dan 5 membagi kode yang sama, sementara 0 dan 6 membagi kode yang lain:

Contoh

switch (new Date().getDay()) {
    case 4:
    case 5:
        text = "Minggu mendekati:)";
        break; 
    case 0:
    case 6:
        text = "Hari ini adalah minggu!~";
         break;
    default: 
        text = "Tunggu minggu ini!";
} 

Coba sendiri

Detil Switching

Jika beberapa case cocok dengan nilai case yang sama, pilih case pertama.

Jika tidak ditemukan case yang cocok, program akan melanjutkan menggunakan label standar.

Jika label standar tidak ditemukan, program akan melanjutkan kalimat setelah switch.

Penggabungan yang ketat

Kalimat switch case menggunakan penggabungan yang ketat (===)。

Nilai harus sama dengan jenis yang akan disesuaikan.

Penggabungan yang mendekati hanya akan true jika operands milik jenis yang sama.

Dalam contoh ini, x tidak akan cocok:

Contoh

var x = "0";
switch (x) {
  case 0:
    text = "Off";
    break;
  case 1:
    text = "On";
    break;
  default:
    text = "No value found";
}

Coba sendiri

buku pelengkap

untuk informasi lebih lanjut tentang Pernyataan Switch JavaScriptuntuk informasi lebih lanjut, silakan baca konten yang relevan di Panduan Tingkat Lanjut JavaScript:

Pernyataan switch ECMAScript
Kalimat switch adalah saudara kalimat if. Bab ini mengenalkan penggunaan kalimat switch serta perbedaan dengan kalimat switch di Java.