0Pricing
TypeScript Academy · Pelajaran

Parameter Tipe Bawaan

Sediakan tipe cadangan jika tidak ada argumen yang diberikan.

Parameter Tipe Bawaan adalah pelajaran TypeScript Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar TypeScript Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus TypeScript Academy mencakup 4 pelajaran total.

Selamat Datang

Parameter tipe bawaan menyediakan tipe cadangan saat pemanggil tidak menentukan argumen tipe. Parameter ini membuat API generik lebih mudah digunakan.

Sintaks Nilai Bawaan

Tambahkan `= DefaultType` setelah nama parameter tipe untuk menetapkan nilai bawaan.
interface Container<T = string> {
  value: T;
}
const c: Container = { value: 'hello' }; // T defaults to string
const n: Container<number> = { value: 42 };

Nilai Bawaan dalam Fungsi Generik

Parameter tipe fungsi juga dapat memiliki nilai bawaan, meskipun hal ini lebih jarang diperlukan karena TypeScript biasanya menyimpulkan tipe tersebut.
function createList<T = string>(): T[] { return []; }
const list = createList(); // T is string by default

Nilai Bawaan dengan Batasan

Parameter tipe dapat memiliki batasan dan nilai bawaan sekaligus. Nilai bawaan tersebut harus memenuhi batasan.
interface Event<T extends object = Record<string, unknown>> {
  type: string;
  payload: T;
}

Nilai Bawaan dalam Komponen Mirip React

Parameter tipe bawaan umum digunakan dalam tipe generik pustaka UI untuk properti komponen.
interface SelectProps<T = string> {
  options: T[];
  value: T;
  onChange: (val: T) => void;
}

Beberapa Nilai Bawaan

Beberapa parameter tipe masing-masing dapat memiliki nilai bawaan.
type Pair<A = string, B = number> = { first: A; second: B };
const p: Pair = { first: 'hello', second: 42 }; // A=string, B=number

Parameter Tipe di Akhir Juga Memerlukan Nilai Bawaan

Jika ingin menggunakan nilai bawaan untuk parameter tipe yang berada di bagian akhir, semua parameter sebelumnya yang tidak memiliki nilai bawaan harus ditentukan.
type Map<K = string, V = unknown> = Record<K extends string ? K : string, V>;
const m: Map = {}; // K=string, V=unknown by default

Saat TypeScript Mengabaikan Nilai Bawaan

Jika TypeScript dapat menyimpulkan argumen tipe dari konteks, TypeScript menggunakan tipe yang disimpulkan meskipun nilai bawaan telah diberikan.
function wrap<T = string>(val: T): T { return val; }
const n = wrap(42); // T is number, not string (inferred)

Penggantian Eksplisit

Memberikan argumen tipe secara eksplisit selalu menggantikan nilai bawaan.
interface Box<T = string> { item: T; }
const numBox: Box<number> = { item: 100 }; // T explicitly number

Nilai Bawaan dalam Generik Kelas

Kelas generik juga dapat memiliki parameter tipe bawaan.
class Stack<T = unknown> {
  private items: T[] = [];
  push(item: T) { this.items.push(item); }
  pop(): T | undefined { return this.items.pop(); }
}

Nilai Bawaan Memudahkan Penggunaan Pustaka Generik

Pembuat pustaka menggunakan parameter tipe bawaan untuk mengurangi kode berulang yang perlu ditulis pemanggil dalam kasus penggunaan umum.

Pemeriksaan Singkat

Dengan `interface Box`, apa tipe `.value` dalam `const b: Box = { value: 99 }`?

Rangkuman

Parameter tipe bawaan (T = DefaultType) menyediakan tipe cadangan saat pemanggil tidak menentukan tipe. Parameter ini paling berguna dalam antarmuka, definisi kelas, dan API pustaka untuk mengurangi kode berulang yang perlu ditulis pemanggil.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Parameter Tipe Bawaan” gratis?

Ya — teks lengkap “Parameter Tipe Bawaan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus TypeScript Academy, upgrade ke CoddyKit PRO. Kursus TypeScript Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Parameter Tipe Bawaan”?

Sediakan tipe cadangan jika tidak ada argumen yang diberikan. Kamu berlatih TypeScript Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai TypeScript Academy?

Tidak diperlukan pengalaman sebelumnya. TypeScript Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Parameter Tipe Bawaan” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran TypeScript Academy ini?

Ya. Setiap pelajaran TypeScript Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Fungsi Generik: Parameter Tipe
  2. Antarmuka Generik dan Alias Tipe
  3. Batasan Generik dengan extends
  4. Parameter Tipe Bawaan
← Kembali ke TypeScript Academy