Menu
CoddyTech

Enum Heterogen

Termasuk bagian Pengantar TypeScript dalam perjalanan JavaScript di Coddy. Pelajaran 55 dari 73.

TypeScript juga mendukung enum heterogen, yaitu enum yang berisi gabungan anggota string dan numerik dalam satu deklarasi.

Berikut cara kamu membuat enum heterogen:

enum MixedEnum {
  No = 0,
  Yes = "YES",
  Maybe = 1
}

Dalam contoh ini, No dan Maybe adalah anggota numerik, sedangkan Yes adalah anggota string. TypeScript memungkinkan fleksibilitas ini, meskipun penting untuk diketahui bahwa enum heterogen jarang digunakan dalam praktik.

challenge icon

Tantangan

Mudah

Buat enum heterogen bernama ResponseCode yang menggabungkan nilai string dan numerik:

  • Success diinisialisasi dengan 200
  • Error diinisialisasi dengan "ERROR"
  • NotFound diinisialisasi dengan 404
  • Timeout diinisialisasi dengan "TIMEOUT"

Buat fungsi bernama handleResponse yang menerima satu parameter:

  • code dengan tipe ResponseCode

Fungsi tersebut harus:

  • Memeriksa kode respons dan mencetak pesan yang berbeda berdasarkan nilainya
  • Jika kodenya adalah ResponseCode.Success, cetak "Request successful"
  • Jika kodenya adalah ResponseCode.Error, cetak "General error occurred"
  • Jika kodenya adalah ResponseCode.NotFound, cetak "Resource not found"
  • Jika kodenya adalah ResponseCode.Timeout, cetak "Request timed out"
  • Memiliki tipe pengembalian void

Buat empat variabel untuk mendemonstrasikan nilai enum:

  • successCode bertipe ResponseCode dan tetapkan ResponseCode.Success padanya
  • errorCode bertipe ResponseCode dan tetapkan ResponseCode.Error padanya
  • notFoundCode bertipe ResponseCode dan tetapkan ResponseCode.NotFound padanya
  • timeoutCode bertipe ResponseCode dan tetapkan ResponseCode.Timeout padanya

Cetak output berikut:

  • Cetak nilai successCode
  • Cetak nilai errorCode
  • Cetak nilai notFoundCode
  • Cetak nilai timeoutCode
  • Panggil handleResponse dengan ResponseCode.Success
  • Panggil handleResponse dengan errorCode
  • Panggil handleResponse dengan nilai numerik 404

Coba sendiri

// TODO: Tulis kodemu di sini

// Buat enum ResponseCode


// Buat fungsi handleResponse


// Buat variabel untuk demonstrasi


// Cetak output yang diminta
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pengantar TypeScript

Latihan sendiri: Playground TypeScript