Interface vs Type

Duration: 15 min•Difficulty: Medium•

Keduanya digunakan untuk mendefinisikan "bentuk" (shape) dari sebuah objek.

Interface

Biasanya digunakan untuk mendefinisikan objek yang bisa di-extend (turunkan).

main.ts
interface User {
id: number;
name: string;
email?: string; // Tanda tanya (?) berarti opsional
}
const me: User = {
id: 1,
name: "Raffi"
};
console.log("Welcome,", me.name);

Type Alias

Lebih fleksibel, bisa digunakan untuk tipe data gabungan (Union).

main.ts
type ID = string | number;
let myID: ID = 123;
myID = "A-123"; // Kedua-duanya valid