0Pricing
TypeScript Academy · Урок

Проверка во время выполнения с zod (введение)

Проверяйте ответы JSON во время выполнения с помощью схем zod, чтобы обеспечить безопасность сверх гарантий типов на этапе компиляции.

«Проверка во время выполнения с zod (введение)» — бесплатный урок TypeScript Academy на CoddyKit. Это урок 2 из 2. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения TypeScript Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс TypeScript Academy содержит 2 уроков всего.

Введение

Цель: добавить безопасность во время выполнения с помощью zod. Типов на этапе компиляции недостаточно, поэтому схемы проверяют реальные данные.

Установка zod

Установите zod — популярную библиотеку проверки схем во время выполнения для TS/JS.

npm install zod

Определение схемы

Создавайте схемы с помощью z.object(). Используйте z.infer<typeof Schema>, чтобы создавать типы TS на основе схем.

import { z } from "zod";

const UserSchema = z.object({
  id: z.number(),
  name: z.string()
});

type User = z.infer<typeof UserSchema>;

Schema.parse()

Вызовите Schema.parse(), чтобы проверить данные. Если JSON не соответствует схеме, будет выброшена ошибка.

async function getUser() {
  const res = await fetch("/user.json");
  const raw = await res.json();
  const parsed = UserSchema.parse(raw);
  console.log(parsed.id, parsed.name);
}

safeParse

safeParse возвращает объект с полями success и error. Это безопаснее, чем выбрасывать исключения.

const result = UserSchema.safeParse(raw);
if (!result.success) {
  console.error(result.error);
} else {
  console.log(result.data);
}

Вложенная схема

Схемы могут быть вложенными: массивы, объекты, необязательные поля и так далее.

const PostSchema = z.object({
  id: z.number(),
  title: z.string(),
  tags: z.array(z.string())
});

const raw = { id: 1, title: "Hello", tags: ["ts", "zod"] };
const post = PostSchema.parse(raw);

Проверка валидации

Быстрая проверка: зачем проверять данные с помощью zod после разбора JSON?

Повторение

Повторение: схемы zod проверяют JSON во время выполнения. Используйте parse или safeParse, чтобы обеспечить безопасность.

Часто задаваемые вопросы

Урок «Проверка во время выполнения с zod (введение)» бесплатный?

Да — полный текст урока «Проверка во время выполнения с zod (введение)» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс TypeScript Academy, подпишись на CoddyKit PRO. Курс TypeScript Academy содержит 2 уроков всего.

Чему я научусь в уроке «Проверка во время выполнения с zod (введение)»?

Проверяйте ответы JSON во время выполнения с помощью схем zod, чтобы обеспечить безопасность сверх гарантий типов на этапе компиляции. Ты практикуешь TypeScript Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать TypeScript Academy?

Предыдущий опыт не требуется. TypeScript Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 2.

Сколько времени занимает урок «Проверка во время выполнения с zod (введение)»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке TypeScript Academy?

Да. Каждый урок TypeScript Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Типы Fetch API; обобщения Response.json()
  2. Проверка во время выполнения с zod (введение)
← Назад к TypeScript Academy