0Pricing
TypeScript Academy · Pelajaran

Tipe Kondisional

Pelajari cara tipe kondisional memungkinkan Anda membuat tipe yang menyesuaikan diri secara dinamis berdasarkan kondisi, sehingga definisi tipe menjadi fleksibel dan dapat digunakan kembali.

Tipe Kondisional adalah pelajaran TypeScript Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 3. 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 3 pelajaran total.

Pengantar Tipe Kondisional

Pengantar Tipe Kondisional

Tipe kondisional dalam TypeScript memungkinkan Anda membuat tipe yang beradaptasi secara dinamis berdasarkan suatu kondisi, sehingga kode Anda lebih fleksibel dan dapat digunakan kembali.

Tipe ini menggunakan sintaksis yang mirip dengan operator kondisional (ternary) JavaScript.

Tipe Kondisional — ilustrasi 1

Apa Itu Tipe Kondisional?

Apa Itu Tipe Kondisional?

Tipe kondisional memungkinkan Anda mendefinisikan tipe yang bergantung pada tipe lain. Sintaksis dasarnya adalah:

T extends U ? X : Y

Artinya: Jika T memperluas U, tipenya adalah X; jika tidak, tipenya adalah Y.

Contoh Dasar Tipe Kondisional

Contoh Dasar Tipe Kondisional

Berikut contoh sederhana:

type IsString<T> = T extends string ? 'Yes' : 'No';

// Test cases
type A = IsString<string>; // 'Yes'
type B = IsString<number>; // 'No'

Menggunakan Tipe Kondisional untuk Pembebanan Berlebih Fungsi

Menggunakan Tipe Kondisional untuk Pembebanan Berlebih Fungsi

Tipe kondisional dapat menyederhanakan pembebanan berlebih fungsi dengan menentukan tipe hasil secara dinamis:

type ReturnType<T> = T extends (...args: any[]) => infer R ? R : never;

function getData(): string {
  return 'Hello';
}

type DataType = ReturnType<typeof getData>; // string

Tipe Kondisional Distributif

Tipe Kondisional Distributif

Saat tipe kondisional diterapkan pada tipe gabungan, tipe tersebut didistribusikan ke setiap anggota gabungan:

type ToArray<T> = T extends any ? T[] : never;

type A = ToArray<string | number>;
// A = string[] | number[]

Menggabungkan Tipe Kondisional dengan Tipe Pemetaan

Menggabungkan Tipe Kondisional dengan Tipe Pemetaan

Anda dapat menggabungkan tipe kondisional dengan tipe pemetaan untuk melakukan transformasi tipe yang ampuh:

type User = {
  id: number;
  name: string;
  isAdmin?: boolean;
};

type MakeRequired<T> = {
  [K in keyof T]-?: T[K] extends undefined ? never : T[K];
};

type RequiredUser = MakeRequired<User>;
// { id: number; name: string; isAdmin: never; }

Kasus Penggunaan Umum Tipe Kondisional

Kasus Penggunaan Umum Tipe Kondisional

Tipe kondisional biasanya digunakan untuk:

  • Menyimpulkan tipe hasil atau parameter.
  • Mentranformasi gabungan dan irisan.
  • Membuat tipe bantuan seperti Exclude, Extract, dan NonNullable.

Tugas Latihan

Tugas Latihan

Buat tipe kondisional yang memeriksa apakah suatu tipe adalah larik dan, jika ya, mengembalikan tipe elemennya; jika tidak, mengembalikan tipe itu sendiri.

Selamat!

Selamat!

Anda telah mempelajari cara menggunakan tipe kondisional untuk membuat definisi tipe yang dinamis dan dapat digunakan kembali dalam TypeScript. Silakan berlatih dengan konsep-konsep ini untuk menulis kode TypeScript yang lebih ampuh dan fleksibel!

Tipe Kondisional — ilustrasi 10

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Tipe Kondisional” gratis?

Ya — teks lengkap “Tipe Kondisional” 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 3 pelajaran total.

Apa yang akan aku pelajari di “Tipe Kondisional”?

Pelajari cara tipe kondisional memungkinkan Anda membuat tipe yang menyesuaikan diri secara dinamis berdasarkan kondisi, sehingga definisi tipe menjadi fleksibel dan dapat digunakan kembali. 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 3 dari 3.

Berapa lama pelajaran “Tipe Kondisional” 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. Penyempitan Tipe Tingkat Lanjut
  2. Fitur Kelas Tingkat Lanjut
  3. Tipe Kondisional
← Kembali ke TypeScript Academy