TypeScript Academy · Pelajaran

Menentukan Bentuk Objek dengan Antara Muka

Gunakan interface untuk menerangkan struktur objek.

Pelajaran 1 daripada 413 langkah

Menentukan Bentuk Objek dengan Antara Muka ialah pelajaran TypeScript Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran TypeScript Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus TypeScript Academy merangkumi sejumlah 4 pelajaran.

Selamat Datang

Antara muka menerangkan bentuk objek dalam TypeScript. Antara muka mentakrifkan sifat yang wujud, jenisnya serta sama ada sifat itu pilihan atau baca sahaja.

Antara Muka Asas

Takrifkan antara muka dengan kata kunci `interface`, diikuti nama sifat dan jenisnya.
interface User {
  id: number;
  name: string;
  email: string;
}
const alice: User = { id: 1, name: 'Alice', email: 'a@b.com' };

Sifat Pilihan dengan ?

Tandakan sifat sebagai pilihan dengan `?`. Sifat pilihan mungkin wujud atau tidak wujud.
interface Config {
  host: string;
  port?: number;     // optional
  timeout?: number;  // optional
}

Sifat Baca Sahaja

Sifat baca sahaja boleh ditetapkan sekali (semasa penciptaan) tetapi tidak boleh diubah selepas itu.
interface Point {
  readonly x: number;
  readonly y: number;
}
const p: Point = { x: 5, y: 10 };
// p.x = 0; // Error!

Tandatangan Kaedah

Antara muka boleh menyertakan tandatangan kaedah yang menerangkan bentuk fungsi.
interface Animal {
  name: string;
  speak(): string;
  move(distance: number): void;
}

Tandatangan Indeks

Gunakan tandatangan indeks apabila objek mempunyai kunci dinamik daripada jenis tertentu.
interface StringMap {
  [key: string]: string;
}
const headers: StringMap = {
  'content-type': 'application/json',
  'accept': 'text/html',
};

Penaipan Berstruktur

TypeScript menggunakan penaipan berstruktur — objek memenuhi antara muka selagi objek itu mempunyai sifat yang diperlukan, tanpa mengira cara objek itu dicipta.
interface Named { name: string; }
function greet(obj: Named) { console.log(obj.name); }
greet({ name: 'Alice', age: 30 }); // Extra props OK when not a literal

Semakan Sifat Berlebihan

TypeScript melaporkan ralat apabila literal objek mempunyai sifat tambahan yang tiada dalam antara muka. Ini ialah semakan sifat berlebihan.
interface Config { host: string; }
// const c: Config = { host: 'localhost', extra: 1 }; // Error on literal
const obj = { host: 'localhost', extra: 1 };
const c: Config = obj; // OK — not a fresh literal

Antara Muka untuk Jenis Fungsi

Antara muka boleh menerangkan jenis yang boleh dipanggil dengan tandatangan panggilan.
interface Greeter {
  (name: string): string;
}
const greet: Greeter = name => 'Hello, ' + name;

Antara Muka Bersarang

Sifat boleh merujuk kepada antara muka lain untuk membina bentuk objek bersarang.
interface Address { street: string; city: string; }
interface Person { name: string; address: Address; }
const p: Person = { name: 'Alice', address: { street: '1 Main', city: 'NY' } };

Antara Muka berbanding Instans Kelas

Antara muka menerangkan bentuk awam sesuatu kelas tetapi dipadam semasa masa jalan. Kelas menyediakan pelaksanaannya.
interface Saveable { save(): Promise<void>; }
class UserService implements Saveable {
  async save() { /* ... */ }
}

Semakan Ringkas

Apakah yang berlaku apabila Anda menetapkan literal objek dengan sifat tambahan kepada jenis antara muka dalam TypeScript?

Imbas Kembali

Antara muka mentakrifkan bentuk objek dengan sifat bertipa, pengubah pilihan/baca sahaja, tandatangan kaedah dan tandatangan indeks. TypeScript menggunakan penaipan berstruktur — keserasian bentuk penting, bukannya pengisytiharan.
Percuma untuk bermula

Pelajari TypeScript dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
101
Pelajaran
352

Soalan Lazim

Adakah pelajaran “Menentukan Bentuk Objek dengan Antara Muka” percuma?

Ya — teks penuh “Menentukan Bentuk Objek dengan Antara Muka” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus TypeScript Academy, tingkat taraf kepada CoddyKit PRO. Kursus TypeScript Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Menentukan Bentuk Objek dengan Antara Muka”?

Gunakan interface untuk menerangkan struktur objek. Anda berlatih TypeScript Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan TypeScript Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran TypeScript Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Menentukan Bentuk Objek dengan Antara Muka” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran TypeScript Academy ini?

Ya. Setiap pelajaran TypeScript Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Menentukan Bentuk Objek dengan Antara Muka
  2. Alias Jenis untuk Jenis Kompleks
  3. Peluasan dan Penggabungan Antara Muka
  4. Antara Muka berbanding Jenis: Bila Perlu Menggunakan Setiapnya
← Kembali ke TypeScript Academy