Enum vs const enum vs alternatif union-literal
Bandingkan enum klasik, const enum, dan alternatif union-literal; pelajari pertimbangannya untuk DX, ukuran, dan keamanan.
Enum vs const enum vs alternatif union-literal adalah pelajaran TypeScript Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar TypeScript Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus TypeScript Academy mencakup 3 pelajaran total.
Pengantar
Tujuan: Pahami kapan menggunakan enumerasi, enumerasi konstan, atau tipe literal gabungan. Anda akan membandingkan keluaran saat dijalankan, DX, dan penghapusan kode yang tidak digunakan saat proses bundel.
Enumerasi numerik
Enumerasi numerik menghasilkan objek saat dijalankan dan memungkinkan pemetaan balik. Sederhana, tetapi menambah ukuran bundel.
enum Direction {
Left = 0,
Right = 1
}
const d: Direction = Direction.Left;
console.log(d); // 0Enumerasi string
Enumerasi string mudah dibaca dalam catatan dan antarmuka pemrograman aplikasi. Enumerasi ini juga menghasilkan objek saat dijalankan.
enum Status {
Ok = "ok",
Error = "error"
}
const s: Status = Status.Ok;
console.log(s); // "ok"Enumerasi konstan
Enumerasi konstan menyisipkan nilai pada waktu kompilasi sehingga tidak memerlukan biaya saat dijalankan, tetapi memerlukan perkakas pembangunan yang konsisten.
const enum Axis {
X = 0,
Y = 1
}
const a: Axis = Axis.X;
console.log(a); // 0 (inlined)Alternatif literal gabungan
Literal gabungan: tidak menghasilkan keluaran saat dijalankan, sangat baik untuk penyempitan dalam switch, dan sangat efektif untuk menghapus kode yang tidak digunakan saat proses bundel. Ini merupakan pilihan bawaan yang baik untuk banyak kasus.
type Dir = "left" | "right";
function move(d: Dir) {
switch (d) {
case "left":
console.log("←");
break;
case "right":
console.log("→");
break;
}
}
move("left");Kapan memilih
Panduan:
- Utamakan literal gabungan untuk sebagian besar kumpulan pilihan karena tidak memiliki biaya saat dijalankan.
- Gunakan enumerasi jika Anda memerlukan objek saat dijalankan atau pemetaan balik.
- Gunakan enumerasi konstan untuk konstanta yang disisipkan jika proses pembangunan Anda mendukungnya.
Pemeriksaan literal gabungan vs enumerasi
Pemeriksaan cepat: Pernyataan mana yang BENAR tentang tipe literal gabungan sebagai alternatif enumerasi?
Ringkasan
Ringkasan: Enumerasi membuat objek saat dijalankan; enumerasi konstan menyisipkan nilai tanpa biaya saat dijalankan; literal gabungan memberikan keamanan tanpa keluaran saat dijalankan. Pilih berdasarkan proses pembangunan dan kebutuhan antarmuka pemrograman aplikasi Anda.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Enum vs const enum vs alternatif union-literal” gratis?
Ya — teks lengkap “Enum vs const enum vs alternatif union-literal” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus TypeScript Academy, upgrade ke CoddyKit PRO. Kursus TypeScript Academy mencakup 3 pelajaran total.
Apa yang akan aku pelajari di “Enum vs const enum vs alternatif union-literal”?
Bandingkan enum klasik, const enum, dan alternatif union-literal; pelajari pertimbangannya untuk DX, ukuran, dan keamanan. Kamu berlatih TypeScript Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai TypeScript Academy?
Tidak diperlukan pengalaman sebelumnya. TypeScript Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 3.
Berapa lama pelajaran “Enum vs const enum vs alternatif union-literal” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran TypeScript Academy ini?
Ya. Setiap pelajaran TypeScript Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Array & ReadonlyArray
- Tuple & tuple berlabel
- Enum vs const enum vs alternatif union-literal