Kembali ke Daftar Catatan

Interface

#typescript#interface

interface di TypeScript mirip dengan tipe data alias ([[tipe-data-alias]]), tapi punya beberapa perbedaan penting. Interface digunakan untuk mendeskripsikan bentuk dari sebuah objek. Ini berguna banget buat menjaga konsistensi struktur data.

export interface Person {
  nama: string;
  umur: number;
}

const person1: Person = {
  nama: 'alif',
  umur: 21,
};

console.log(person1);

Function Interface

Function interface digunakan untuk mendefinisikan tipe dari sebuah fungsi. Berguna jika ingin memastikan fungsi punya parameter dan return type tertentu.

interface Greet {
  (nama: string): string;
}

const sapa: Greet = (nama) => {
  return `Halo, ${nama}!`;
};

console.log(sapa('Alif')); // Halo, Alif!

indexable interface

digunakan jika ingin membuat objek atau array yang bisa diakses lewat index atau key tertentu

interface NamaList {
  [index: number]: string;
}

const teman: NamaList = ['Alif', 'Udin', 'Budi'];

console.log(teman[0]); // Alif

Atau contoh untuk objek dengan key string:

interface NilaiMap {
  [key: string]: number;
}

const nilai: NilaiMap = { matematika: 90, fisika: 85 };

console.log(nilai['fisika']); // 85

Catatan Terkait