- 1. Mendeklarasikan Variabel di TypeScript
- 2. Tipe Data Dasar di TypeScript
- 3. Type Inference (Inferensi Tipe Data)
- 4. Konstanta dengan const
- Kesimpulan
Halo teman-teman semuanya, setelah belajar bagaimana cara setup project menggunakan TypeScript, maka kita akan lanjutkan belajar mengenal tipe data dan variabel di dalam TypeScrpt.
TypeScript memperkenalkan sistem static typing, yang memungkinkan kita menentukan tipe data variabel sejak awal. Ini membantu dalam mendeteksi kesalahan lebih awal sebelum kode dijalankan.
Dalam artikel ini, kita akan membahas berbagai tipe data yang tersedia di TypeScript dan cara mendeklarasikan variabel dengan baik.
1. Mendeklarasikan Variabel di TypeScript
Di TypeScript, kita bisa mendeklarasikan variabel menggunakan let atau const, seperti dalam JavaScript, tetapi dengan tipe data eksplisit:
let nama: string = "Fika Ridaul Maulayya";
let umur: number = 25;
let aktif: boolean = true;
Jika kita mencoba memberikan nilai yang tidak sesuai dengan tipe yang telah ditentukan, TypeScript akan memberikan error:
let usia: number = "dua puluh lima"; // ❌ Error: Type 'string' is not assignable to type 'number'.
2. Tipe Data Dasar di TypeScript
Berikut adalah beberapa tipe data utama di TypeScript:
-
String
Digunakan untuk menyimpan teks.
let namaLengkap: string = "Fika Ridaul Maulayya"; -
Number
Mencakup angka integer dan floating point.
let tinggi: number = 175.5; let tahunLahir: number = 1998; -
Boolean
Hanya memiliki dua nilai:
trueataufalse.let sudahMenikah: boolean = false; -
Any
Tipe
anymemungkinkan variabel menyimpan nilai dengan tipe apa pun, tetapi sebaiknya dihindari untuk menjaga ketepatan kode.let data: any = "Bisa string"; data = 123; // Juga diperbolehkan -
Array
Digunakan untuk menyimpan banyak nilai dalam satu variabel.
let angka: number[] = [1, 2, 3, 4, 5]; let kata: string[] = ["satu", "dua", "tiga"]; -
Tuple
Array dengan jumlah elemen dan tipe yang sudah ditentukan.
let mahasiswa: [string, number] = ["Budi", 21]; -
Enum
Mendefinisikan kumpulan nilai tetap yang bisa dipilih.
enum Role { Admin, User, Guest, } let peran: Role = Role.Admin; -
Void
Tipe
voiddigunakan ketika function tidak mengembalikan nilai.function hello(nama: string): void { console.log(`Halo, ${nama}!`); } hello("Fika"); // Output: Halo, Fika!Function ini hanya menampilkan teks ke console dan tidak memiliki nilai kembali (
return). -
Null dan Undefined
nulldanundefinedadalah dua tipe yang sering digunakan untuk merepresentasikan ketiadaan nilai.let kosong: null = null; let tidakTerdefinisi: undefined = undefined;Biasanya digunakan saat ingin menyatakan bahwa sebuah variabel belum memiliki nilai yang valid.
-
Never
Tipe
neverdigunakan untuk function yang tidak akan pernah mengembalikan nilai, misalnya function yang selalu error atau tidak pernah selesai.function errorMessage(message: string): never { throw new Error(message); }Function ini tidak memiliki nilai kembali karena selalu menghasilkan error.
-
Object
Tipe
objectdigunakan untuk variabel yang menyimpan nilai dalam bentuk object.let user: object = { nama: "Fika", umur: 25 };Object biasanya digunakan dengan interface atau type alias untuk tipe yang lebih spesifik.
3. Type Inference (Inferensi Tipe Data)
TypeScript dapat menebak tipe data dari nilai awalnya, jadi kita tidak selalu harus menuliskannya secara eksplisit.
let kota = "Jakarta"; // TypeScript akan menganggap ini sebagai string
// kota = 123; // ❌ Error: Type 'number' is not assignable to type 'string'
4. Konstanta dengan const
Gunakan const untuk variabel yang nilainya tidak akan berubah.
const API_URL: string = "https://api.santrikoding.com";
Kesimpulan
Dalam artikel ini, kita telah mempelajari berbagai tipe data yang tersedia di TypeScript dan cara mendeklarasikan variabel dengan baik. Dengan memahami tipe data, kita dapat menghindari banyak kesalahan dalam penulisan kode.
Pada artikel selanjutnya, kita semua akan belajar tentang Function dan Parameter di dalam TypeScript.
Terima Kasih
Artikel ini dibaca sebanyak 3.331 kali
{ setTimeout(() => { showShimmer = false; }, 300); })"
:class="{'opacity-0': !loaded, 'opacity-100': loaded}"
class="lazy w-full h-auto rounded-xl border border-white dark:border-neutral-700/80 transition-opacity duration-500"
loading="lazy"
/>
SAWERIA
Memuat komentar...