arraytupletipePemula3 mnt baca

Array dan Tuple

Array bertipe, array readonly, dan tuple untuk data berpasangan dengan panjang tetap.

Array Bertipe

Ada dua cara menulis tipe array, pilih yang kamu suka:

typescript
let angka: number[] = [1, 2, 3];
let nama: Array<string> = ["ana", "budi"];

angka.push("empat");
// Error: Argument of type 'string' is not assignable to parameter of type 'number'.

Sekali dideklarasikan number[], compiler menolak nilai non-number masuk. Method seperti map dan filter pun otomatis tahu tipe elemennya, jadi autocomplete di editor akurat.

readonly: Array yang Tidak Boleh Diubah

typescript
const konfigurasi: readonly string[] = ["a", "b"];
konfigurasi.push("c");
// Error: Property 'push' does not exist on type 'readonly string[]'.

Berguna untuk data konstan. Catatan: ini proteksi di level tipe saja, bukan Object.freeze di runtime.

Tuple: Pasangan dengan Urutan Tetap

Kadang data adalah pasangan berurutan, misalnya koordinat atau hasil return [nilai, setter]. Tuple mengunci tipe tiap posisi:

typescript
let koordinat: [number, number] = [10, 20];
koordinat = [10, "dua puluh"];
// Error: Type 'string' is not assignable to type 'number'.

let user: [string, number, boolean] = ["ana", 17, true];

Beda dengan number[] yang isinya bebas berapa pun, tuple (string, number) harus persis dua elemen dengan urutan itu.

Catatan teknis: Tuple rentan terhadap push. TypeScript mengizinkan koordinat.push(30) walau tuple dideklarasikan dua elemen (keterbatasan yang sudah lama dikenal). Kalau panjang harus dijamin, pakai readonly [number, number] atau hindari mutasi langsung.