Tipe data TypeScript adalah konsep dasar yang wajib dipahami sebelum masuk ke level pengembangan yang lebih lanjut. Dengan memahami tipe data, kamu dapat menulis kode yang lebih aman, mudah dipelihara, dan minim kesalahan. Artikel ini akan membahas berbagai tipe data primitif, cara mendeklarasikan variabel, serta konversi antar tipe data dalam TypeScript.
Salah satu keunggulan TypeScript dibanding JavaScript adalah kemampuannya dalam menetapkan tipe data secara eksplisit. Dengan sistem static typing, TypeScript dapat mendeteksi kesalahan saat proses kompilasi, bukan setelah kode dijalankan. Ini sangat membantu untuk proyek besar agar lebih stabil dan mudah dikelola.
Apa Itu Tipe Data Primitif?
Tipe data primitif adalah tipe data dasar yang tersedia langsung di TypeScript. Tipe ini menyimpan nilai sederhana seperti angka, teks, atau nilai boolean. Berikut adalah tipe data primitif yang umum digunakan:
1. String
Digunakan untuk menyimpan teks atau karakter.
let nama: string = "Arvian";
let pesan: string = `Halo, ${nama}!`;
2. Number
Digunakan untuk angka, baik bilangan bulat maupun desimal.
let umur: number = 25; let harga: number = 12500.5;
3. Boolean
Menyimpan nilai logika true atau false.
let aktif: boolean = true; let login: boolean = false;
4. Null dan Undefined
Menandakan ketiadaan nilai.
let dataKosong: null = null; let belumDidefinisikan: undefined = undefined;
Biasanya, undefined berarti variabel belum memiliki nilai, sedangkan null digunakan untuk menandakan bahwa nilai secara sengaja dikosongkan.
Tipe Khusus: Any, Unknown, dan Never
Selain tipe dasar, TypeScript juga menyediakan tipe khusus untuk situasi tertentu.
1. Any
Tipe any memungkinkan variabel berisi nilai dari tipe apa pun. Cocok digunakan sementara saat belum tahu tipe data yang tepat, tetapi penggunaannya sebaiknya dibatasi.
let data: any = "Teks"; data = 123; // valid data = true; // juga valid
2. Unknown
Mirip dengan any, namun lebih aman. TypeScript akan memaksa kita melakukan pemeriksaan tipe sebelum menggunakannya.
let nilai: unknown = "Hello";
if (typeof nilai === "string") {
console.log(nilai.toUpperCase());
}
3. Never
Digunakan untuk fungsi yang tidak pernah mengembalikan nilai, misalnya fungsi yang selalu melempar error atau berjalan tanpa henti.
function error(message: string): never {
throw new Error(message);
}
Deklarasi Variabel di TypeScript
Untuk mendeklarasikan variabel di TypeScript, digunakan tiga kata kunci utama: let, const, dan var.
Namun, let dan const lebih disarankan karena lebih aman secara scope.
let nama: string = "Andi"; const PI: number = 3.14;
Jika tidak mendeklarasikan tipe secara eksplisit, TypeScript akan melakukan type inference — yakni menebak tipe data secara otomatis berdasarkan nilai awal.
let kota = "Jakarta"; // otomatis dianggap string
Konversi Tipe Data (Type Conversion)
Dalam beberapa kasus, kamu mungkin perlu mengonversi tipe data, misalnya dari string ke number atau sebaliknya. TypeScript menyediakan beberapa cara untuk melakukan hal ini.
1. Konversi String ke Number
let teksAngka: string = "100"; let angka: number = Number(teksAngka); console.log(angka + 50); // Output: 150
2. Konversi Number ke String
let nilaiAngka: number = 123;
let teks: string = nilaiAngka.toString();
console.log("Nilai: " + teks);
3. Konversi Otomatis (Type Coercion)
TypeScript kadang menyesuaikan tipe secara otomatis saat operasi campuran dilakukan.
let hasil = "Total: " + 100; // otomatis ubah number ke string
Namun, sebaiknya hindari terlalu sering mengandalkan konversi otomatis, karena bisa menyebabkan bug tersembunyi.
Tips Penting Saat Menggunakan Tipe Data TypeScript
-
Gunakan
strict modepadatsconfig.jsonuntuk validasi ketat. -
Hindari penggunaan
anyjika memungkinkan. -
Gunakan
unknownuntuk tipe dinamis yang perlu diverifikasi. -
Manfaatkan type inference agar kode tetap ringkas namun aman.
-
Gunakan
asuntuk type assertion ketika yakin dengan tipe suatu data.
Kesimpulan
Memahami tipe data TypeScript adalah pondasi utama untuk menulis kode yang aman dan efisien. Dengan mengenal tipe data primitif seperti string, number, boolean, hingga tipe khusus seperti any, unknown, dan never, kamu dapat mengontrol perilaku data secara lebih baik.
Selain itu, kemampuan melakukan konversi tipe data dengan benar juga akan sangat membantu saat berinteraksi dengan input pengguna atau data dari API. Langkah selanjutnya setelah ini adalah memahami array, tuple, dan object di TypeScript agar logika aplikasi semakin kuat dan fleksibel.