Sobes.tech
Middle+

TypeScript'da qanday utility turlarini bilasiz?

sobes.tech AI

AIdan javob

TypeScriptда, турларни трансформация қилиш ва бирлаштиришга ёрдам берувчи бир қатор фойдали utility-турлар мавжуд:

  • Partial<T> — T турининг барча хоссаларини мажбурий бўлмаган қилади.
  • Required<T> — T турининг барча хоссаларини мажбурий қилади.
  • Readonly<T> — T турининг барча хоссаларини фақат ўқиш учун қилади.
  • Record<K, T> — калитлари K ва қийматлари T бўлган объект турини яратади.
  • Pick<T, K> — T туридан K хоссаларининг кичик тўпламини танлайди.
  • Omit<T, K> — T туридан K хоссаларини чиқаради.
  • Exclude<T, U> — T туридан U билан мос келадиган барча турларни чиқаради.
  • Extract<T, U> — T дан U билан мос келадиган турларни танлайди.
  • NonNullable<T> — T дан null ва undefined ни чиқаради.
  • ReturnType<T> — T функциясининг қайтарилиш турини олади.
  • Parameters<T> — T функциясининг параметрлар турларининг кортежини олади.

Partialдан фойдаланиш мисоли:

interface User {
  id: number;
  name: string;
  email: string;
}

const updateUser = (user: Partial<User>) => {
  // фақат қисмларини ўтказиш мумкин
};

updateUser({ name: "Alice" });

Бу турлар, кўпроқ ифода этувчи ва хавфсиз код ёзишга ёрдам беради.