Install Web App

Belajar Typescript #43 | Accessors

profil-penulis

Irgo Adityawan

28 Februari 2023

Dalam pemrograman TypeScript, accessors adalah metode khusus yang memungkinkan Anda untuk mengakses dan mengubah nilai properti objek. Accessors digunakan untuk memberikan kontrol lebih lanjut atas akses ke properti dan memungkinkan Anda untuk menjalankan logika tambahan saat membaca atau menulis nilai properti. Artikel ini akan menjelaskan konsep accessors dalam TypeScript, bagaimana cara menggunakan mereka, dan mengapa mereka berguna dalam pengembangan aplikasi.

Apa Itu Accessors?

Accessors adalah metode yang digunakan untuk mengontrol akses ke nilai properti dalam sebuah class. Mereka terdiri dari dua jenis:

  • Getter: Metode yang digunakan untuk membaca nilai properti.
  • Setter: Metode yang digunakan untuk mengubah nilai properti.

Accessors digunakan untuk mengatur kontrol ekstra saat nilai properti dibaca atau ditulis. Dengan accessors, Anda dapat melakukan validasi, perhitungan, atau logika tambahan saat mengakses atau mengubah nilai properti.

Menerapkan Getter dalam TypeScript

Untuk mendefinisikan getter, Anda menggunakan kata kunci get diikuti oleh nama getter. Getter tidak memiliki parameter dan mengembalikan nilai. Berikut adalah contoh penggunaan getter dalam TypeScript:

class Circle {
  private _radius: number;

  constructor(radius: number) {
    this._radius = radius;
  }

  get radius(): number {
    return this._radius;
  }
}

Dalam contoh di atas, kita memiliki class Circle dengan getter radius. Getter ini memungkinkan kita untuk membaca nilai _radius dengan cara yang terkontrol.

Menerapkan Setter dalam TypeScript

Setter digunakan untuk mengubah nilai properti dan memungkinkan Anda untuk melakukan validasi atau logika tambahan saat pengubahan nilai. Untuk mendefinisikan setter, Anda menggunakan kata kunci set diikuti oleh nama setter dan parameter yang akan menerima nilai yang akan diatur. Berikut adalah contoh penggunaan setter dalam TypeScript:

class Circle {
  private _radius: number;

  constructor(radius: number) {
    this._radius = radius;
  }

  get radius(): number {
    return this._radius;
  }

  set radius(value: number) {
    if (value >= 0) {
      this._radius = value;
    } else {
      console.error("Radius must be a non-negative number.");
    }
  }
}

Dalam contoh di atas, setter radius memeriksa apakah nilai yang diberikan adalah non-negatif sebelum mengubah nilai _radius.

Menggunakan Getter dan Setter

Anda dapat menggunakan getter dan setter untuk mengakses dan mengubah nilai properti dengan cara yang mirip dengan properti biasa:

const myCircle = new Circle(5);
console.log(myCircle.radius); // Menggunakan getter, output: 5

myCircle.radius = 7; // Menggunakan setter
console.log(myCircle.radius); // Menggunakan getter, output: 7

myCircle.radius = -1; // Menggunakan setter, akan mencetak pesan kesalahan

Kesimpulan

Accessors adalah alat penting dalam TypeScript yang memungkinkan Anda untuk mengontrol akses ke nilai properti objek dan menjalankan logika tambahan saat membaca atau menulis nilai properti. Dengan penggunaan yang tepat, getter dan setter memungkinkan Anda untuk memastikan data yang aman dan valid dalam aplikasi Anda, serta memberikan fleksibilitas dalam pengelolaan nilai properti.

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