Materi
type alias memberi nama pada sebuah tipe, termasuk bentuk objek. Untuk bentuk objek, interface dan type alias sama-sama bisa dipakai; type alias juga bisa memberi nama pada tipe yang bukan objek, seperti union yang dibahas di modul berikutnya.
Tanda tanya setelah nama properti menandai properti opsional: objek boleh tidak memilikinya, dan saat dibaca nilainya bertipe tipe aslinya atau undefined. Kata readonly di depan nama properti menutup penulisan ulang: membaca tetap boleh, tetapi memberinya nilai baru ditolak dengan pesan Cannot assign to 'nomor' because it is a read-only property.
type Kurir = {
readonly kode: string;
nama: string;
catatan?: string;
};
function labelKurir(k: Kurir): string {
if (k.catatan) return `${k.nama} [${k.kode}] ${k.catatan}`;
return `${k.nama} [${k.kode}]`;
}Membaca properti opsional tanpa memeriksanya lebih dulu ditolak ketika hasilnya dipakai sebagai nilai yang wajib ada. Pemeriksaan if seperti di atas membuat TypeScript tahu properti itu pasti terisi di dalam blok tersebut. Untuk properti readonly, fungsi yang ingin mengubah nilai menyusun objek baru dan mengembalikannya, sehingga data yang dipegang pemanggil tetap utuh.