Install Web App

Belajar Typescript #17 | Memahami dan menerapkan union types

profil-penulis

Irgo Adityawan

24 Februari 2023

Union types adalah salah satu fitur kuat dalam TypeScript yang memungkinkan Anda mendefinisikan tipe data yang bisa memiliki beberapa tipe yang berbeda. Ini memberi fleksibilitas dalam penanganan tipe data dalam kode TypeScript Anda. Artikel ini akan membahas apa itu union types, bagaimana cara menggunakannya, dan contoh penggunaan yang berguna.

Apa Itu Union Types?

Union types memungkinkan Anda untuk mendefinisikan variabel, parameter fungsi, atau tipe data lainnya yang bisa memiliki lebih dari satu tipe data yang berbeda. Tipe data ini dipisahkan oleh operator |. Dengan union types, Anda memberikan informasi kepada TypeScript bahwa variabel tersebut dapat memiliki salah satu dari beberapa tipe yang Anda tentukan.

Cara Menggunakan Union Types

Dalam TypeScript, Anda dapat menggunakan union types dengan cara yang sangat sederhana. Anda cukup mendefinisikan tipe data dengan menggunakan operator | antara tipe-tipe yang ingin Anda tambahkan dalam union. Berikut adalah contoh sederhana penggunaan union types:

 
function printId(id: number | string) {
  console.log(id);
}

let userId: number | string;
userId = 123;
printId(userId); // Output: 123

userId = "abc";
printId(userId); // Output: "abc"

 

Pada contoh di atas, kita mendefinisikan parameter id dalam fungsi printId sebagai union types yang bisa berisi tipe number atau string. Kemudian, kita mendefinisikan variabel userId sebagai union types yang bisa berisi tipe number atau string, dan kita bisa mengisi nilainya dengan tipe data apa pun dari kedua tipe tersebut.

Keuntungan Union Types

Union types memberikan sejumlah keuntungan dalam pengembangan aplikasi TypeScript:

  1. Fleksibilitas: Union types memberikan fleksibilitas dalam menangani kasus di mana variabel dapat memiliki beberapa tipe yang berbeda. Ini sangat berguna ketika Anda ingin menangani data yang bervariasi, seperti tipe data input pengguna.

  2. Kode yang Lebih Jelas: Dengan union types, Anda bisa lebih jelas dalam mendefinisikan tipe data yang diperbolehkan dalam suatu konteks, sehingga membuat kode lebih mudah dibaca dan dimengerti.

  3. Pencegahan Kesalahan: Union types membantu mencegah kesalahan saat penggunaan variabel dengan tipe yang tidak sesuai. Jika Anda mencoba menggabungkan tipe yang tidak diizinkan, TypeScript akan memberikan pesan kesalahan.

Contoh Penggunaan Union Types

Selain contoh di atas, berikut adalah beberapa contoh penggunaan union types yang berguna:

Tipe Data untuk Variabel dengan Banyak Pilihan
 
type Status = "Active" | "Inactive" | "Pending";

function setStatus(userId: number, status: Status) {
  // Implementasi fungsi
}

 

Pada contoh ini, Status adalah union types yang dapat berisi salah satu dari tiga nilai string: "Active", "Inactive", atau "Pending".

Tipe Data untuk Variabel dengan Nilai Default

 
type Name = string | null;

function getUserName(userId: number): Name {
  // Implementasi fungsi
}

 

Pada contoh ini, tipe Name adalah union types yang dapat berisi tipe data string atau null, sehingga variabel ini dapat memiliki nilai string atau null sebagai nilai default.

Kesimpulan

Union types adalah fitur yang sangat berguna dalam TypeScript untuk menangani tipe data yang bisa memiliki beberapa nilai yang berbeda. Ini memberikan fleksibilitas, kejelasan, dan membantu mencegah kesalahan dalam kode Anda. Dengan pemahaman yang baik tentang union types, Anda dapat membuat kode yang lebih kuat dan mudah dipahami dalam pengembangan aplikasi TypeScript Anda.

Artikel Lainnya Dengan Kategori Terkait :


1. Belajar Typescript #01 | Memahami apa itu Typescript

2. Belajar Typescript #02 | Setup project Typescript

3. Belajar Typescript #03 | Konfigurasi compiler Typescript

4. Belajar Typescript #04 | Membuat code dan menjalankan Typescript

5. Belajar Typescript #05 | Basic types pada Typescript

6. Belajar Typescript #06 | Type data Boolean pada Typescript

7. Belajar Typescript #07 | Type data Number pada Typescript

8. Belajar Typescript #08 | Type data String pada Typescript

9. Belajar Typescript #09 | Type data Null dan Undefined pada Typescript

10. Belajar Typescript #10 | Type data Any pada Typescript

11. Belajar Typescript #11 | Type data Void pada Typescript

12. Belajar Typescript #12 | Object types pada Typescript

13. Belajar Typescript #13 | Object Literal pada Typescript

14. Belajar Typescript #14 | Type data Void pada Typescript

15. Belajar Typescript #15 Object types pada Typescript

16. Belajar Typescript #16 | Memahami dan menerapkan type aliases

17. Belajar Typescript #17 | Memahami dan menerapkan union types

18. Belajar Typescript #18 | Memahami dan menerapkan intersection types

19. Belajar Typescript #19 | Basic types lanjutan - Array

20. Belajar Typescript #20 | Basic types lanjutan - Tuples

21. Belajar Typescript #21 | Basic types lanjutan - Null

22. Belajar Typescript #22 | Basic types lanjutan - Undefined

23. Belajar Typescript #23 | Basic types lanjutan - Void

24. Belajar Typescript #24 | Basic types lanjutan - Never

25. Belajar Typescript #25 | Mengenal teknik lanjutan pada Typescript

26. Belajar Typescript #26 | Optional Parameter

27. Belajar Typescript #27 | Default Parameter

28. Belajar Typescript #28 | Return Type

29. Belajar Typescript #29 | Mendeklarasikan Fungsi - Tanpa Parameter

30. Belajar Typescript #30 | Mendeklarasikan Fungsi - Dengan Parameter

31. Belajar Typescript #31 | Mendeklarasikan Fungsi - Dengan Return Type

32. Belajar Typescript #32 | Mendeklarasikan Fungsi - Sebagai Variabel

33. Belajar Typescript #33 | Mendeklarasikan Fungsi - Sebagai Tipe Data

34. Belajar Typescript #34 | Function Call Signature

35. Belajar Typescript #35 | Menerapkan Types ke dalam class

36. Belajar Typescript #36 | Class declaration

37. Belajar Typescript #37 | Properties dan Methods

38. Belajar Typescript #38 | Object dan Properti dari sebuah class

39. Belajar Typescript #39 | Constructor

40. Belajar Typescript #40 | Konsep OOP - Inheritance

41. Belajar Typescript #41 | Konsep OOP - Abstraction

42. Belajar Typescript #42 | Konsep OOP - Encapsulation

43. Belajar Typescript #43 | Accessors

44. Belajar Typescript #44 | Member visibility / Access modifier

45. Belajar Typescript #45 | Konsep OOP Polymorphism

46. Interfaces TypeScript

Masuk Terlebih dahulu untuk berkomentar

Paling baru
Lihat Lainnya