0Pricing
TypeScript Academy · Pelajaran

Dasar-Dasar Skema Zod

Definisikan skema untuk primitif, objek, dan array.

Dasar-Dasar Skema Zod adalah pelajaran TypeScript Academy gratis di CoddyKit. Ini adalah pelajaran 1 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.

Mengapa Validasi Saat Program Berjalan?

Tipe TypeScript hilang saat program berjalan. Data dari API, formulir, dan berkas tidak memiliki tipe di batas masuknya. Zod memvalidasi data tersebut saat program berjalan dan juga memberikan tipenya.

import { z } from "zod";
// Types check at compile time; Zod checks values at runtime.

Mengimpor Zod

Ambil namespace z dari paket zod. Setiap pembangun schema berada di dalam z.

import { z } from "zod";
const nameSchema = z.string();
// nameSchema validates that a value is a string.

Schema Primitif

Zod menyediakan pembangun untuk tipe primitif: z.string(), z.number(), dan z.boolean() masing-masing memvalidasi satu jenis nilai.

import { z } from "zod";
const name = z.string();
const age = z.number();
const active = z.boolean();
// Use .parse(value) to validate at runtime.

Memvalidasi Nilai

Panggil .parse pada schema untuk melakukan validasi. Fungsi ini mengembalikan nilai jika valid dan memunculkan kesalahan jika tidak.

import { z } from "zod";
const schema = z.string();
const result = schema.parse("hello"); // "hello"
const broken = schema.parse(123); // throws ZodError

Schema Objek

z.object menjelaskan shape suatu objek dengan memetakan setiap kunci ke schema untuk nilainya.

import { z } from "zod";
const userSchema = z.object({
  name: z.string(),
  age: z.number()
});
// userSchema.parse({ name: "Ada", age: 36 }) succeeds.

Schema Larik

z.array memvalidasi bahwa suatu nilai adalah larik yang semua elemennya cocok dengan schema yang diberikan.

import { z } from "zod";
const tags = z.array(z.string());
// tags.parse(["a", "b"]) succeeds; tags.parse([1]) throws.

Menyusun Schema Bersarang

Schema dapat disusun. Sebuah objek dapat berisi larik dan objek lain, mencerminkan bentuk data nyata Anda.

import { z } from "zod";
const post = z.object({
  title: z.string(),
  tags: z.array(z.string()),
  author: z.object({ name: z.string() })
});
// Validates nested structure in one call.

Boolean dan Angka Bersama-sama

Gabungkan beberapa tipe bidang dalam satu schema objek untuk memodelkan rekaman yang realistis.

import { z } from "zod";
const product = z.object({
  name: z.string(),
  price: z.number(),
  inStock: z.boolean()
});
// product.parse({ name: "Pen", price: 2, inStock: true });

Schema Adalah Nilai

Schema Zod adalah nilai JavaScript biasa yang dapat Anda simpan, teruskan, dan gunakan kembali, berbeda dari tipe TypeScript yang hanya ada saat kompilasi.

import { z } from "zod";
const emailSchema = z.string();
function check(s: typeof emailSchema, v: unknown) {
  return s.parse(v);
}
// You can pass schemas as arguments.

Memvalidasi Masukan yang Tidak Diketahui

Zod sangat cocok untuk data unknown, seperti muatan JSON yang telah diuraikan, karena Zod memeriksa sekaligus mempersempit nilai tersebut dengan aman.

import { z } from "zod";
const schema = z.object({ id: z.number() });
const raw: unknown = JSON.parse("{ \"id\": 1 }");
const data = schema.parse(raw); // data.id is number

Blok Dasar untuk Kursus Ini

Dengan z.object, z.string, z.number, z.array, dan z.boolean, Anda dapat menjelaskan sebagian besar data. Selanjutnya kita akan menginferensikan tipe TypeScript dari schema tersebut.

import { z } from "zod";
const schema = z.object({
  name: z.string(),
  scores: z.array(z.number())
});
// One schema, ready to validate and to infer a type from.

Pemeriksaan Singkat: Dasar-dasar Zod

Uji pemahaman Anda tentang dasar-dasar schema Zod.

Ringkasan: Dasar-dasar Schema Zod

Anda telah mempelajari cara mengimpor z dan membuat schema dengan z.object, z.string, z.number, z.array, dan z.boolean, lalu memvalidasi nilai saat program berjalan menggunakan .parse.

import { z } from "zod";
const userSchema = z.object({ name: z.string(), age: z.number() });
// userSchema.parse({ name: "Ada", age: 36 });

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Dasar-Dasar Skema Zod” gratis?

Ya — teks lengkap “Dasar-Dasar Skema Zod” 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 “Dasar-Dasar Skema Zod”?

Definisikan skema untuk primitif, objek, dan array. 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 1 dari 4.

Berapa lama pelajaran “Dasar-Dasar Skema Zod” 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. Dasar-Dasar Skema Zod
  2. Menyimpulkan Jenis dari Skema
  3. parse versus safeParse
  4. Menyusun dan Menyempurnakan Skema
← Kembali ke TypeScript Academy