Konstanta #
Di TypeScript, konstanta (constant
) adalah variabel yang nilainya tidak dapat diubah setelah ditetapkan. Konstanta biasanya digunakan untuk nilai-nilai yang bersifat tetap selama runtime aplikasi. Berikut adalah berbagai cara mengimplementasikan konstanta di TypeScript:
Menggunakan const
#
Kata kunci const
digunakan untuk mendeklarasikan variabel yang nilainya tidak dapat diubah setelah ditetapkan. Ini adalah cara paling umum untuk mendefinisikan konstanta di TypeScript.
const PI = 3.14;
const MAX_USERS = 100;
- Sifat
const
:- Setelah nilai diberikan kepada variabel yang dideklarasikan dengan
const
, nilainya tidak dapat diubah. const
tidak berarti nilai variabel harus diketahui saat kompilasi; itu berarti nilainya tidak dapat diubah setelah ditetapkan.
- Setelah nilai diberikan kepada variabel yang dideklarasikan dengan
const greeting = "Hello";
greeting = "Hi"; // Error: Cannot assign to 'greeting' because it is a constant.
const
dengan Objek
#
Meskipun variabel yang dideklarasikan dengan const
tidak dapat diubah, properti dari objek yang dideklarasikan dengan const
masih dapat dimodifikasi.
const person = {
name: "John",
age: 30
};
// Ini diperbolehkan
person.age = 31;
// Namun, mengubah referensi objek akan menyebabkan error
// person = { name: "Jane", age: 25 }; // Error
- Sifat
const
pada Objek:- Objek yang dideklarasikan dengan
const
tidak dapat diubah referensinya, tetapi properti di dalam objek tersebut masih dapat dimodifikasi.
- Objek yang dideklarasikan dengan
const
dengan Array
#
Konsep yang sama berlaku untuk array. Anda dapat memodifikasi elemen-elemen dari array, tetapi Anda tidak dapat mengubah referensi dari array itu sendiri.
const numbers = [1, 2, 3];
// Ini diperbolehkan
numbers.push(4);
// Namun, mengubah referensi array akan menyebabkan error
// numbers = [4, 5, 6]; // Error
Enum sebagai Konstanta #
TypeScript juga memiliki fitur enum
yang dapat digunakan sebagai kumpulan konstanta terkait. enum
sering digunakan untuk mendefinisikan kumpulan nilai tetap yang mewakili sesuatu, seperti status atau tipe.
enum Direction {
Up = 1,
Down,
Left,
Right
}
const currentDirection = Direction.Up;
- Sifat
enum
:- Setiap anggota
enum
adalah konstanta. enum
dapat digunakan untuk mengelompokkan nilai-nilai yang terkait bersama dalam satu tempat yang dapat dipahami dan diakses dengan mudah.
- Setiap anggota
Literal Types sebagai Konstanta #
TypeScript mendukung Literal Types, yang memungkinkan Anda untuk mendeklarasikan variabel dengan tipe yang spesifik dan nilai yang tetap. Ini bisa menjadi cara lain untuk mendefinisikan konstanta.
const trueValue: true = true;
const direction: "UP" = "UP";
- Sifat Literal Types:
- Variabel dengan tipe literal hanya dapat memiliki satu nilai tetap dan tidak dapat diubah menjadi nilai lain.
- Literal types berguna untuk kasus di mana Anda menginginkan nilai yang sangat spesifik dan memastikan bahwa nilai tersebut tidak diubah.
Konstanta Global #
Konstanta global dapat didefinisikan di luar fungsi atau modul untuk dapat diakses dari mana saja dalam kode Anda.
const API_URL = "https://api.example.com";
function fetchData() {
return fetch(API_URL);
}
- Sifat Konstanta Global:
- Konstanta global tersedia di seluruh aplikasi dan dapat diakses dari fungsi atau modul mana pun.
- Menggunakan konstanta global bisa memudahkan pengaturan konfigurasi yang digunakan di banyak tempat.
Kesimpulan #
Dengan memahami berbagai cara untuk mengimplementasikan konstanta di TypeScript, Anda bisa menulis kode yang lebih aman dan terprediksi, serta menghindari perubahan nilai yang tidak diinginkan selama runtime aplikasi.