Middle
TypeScriptтеги utility түрлөрү жөнүндө айтып бериңиз.
sobes.tech AI
AIден жооп
TypeScriptтеги Utility – бул алдын ала түзүлгөн жардамчы түрлөр, алар түрлөр үстүндө жалпы операцияларды жеңилдетет, мисалы түрлөрдү өзгөртүү, чыгарып алуу же белгилүү мүнөздөмөлөрдү чыгарып салуу. Алар коддун ийкемдүүлүгүн жана окумдуулугун жогорулатат.
Негизги пайдалуу түрлөр:
Partial<Type>: БардыкTypeмүнөздөмөлөрү милдеттүү эмес түр түзөт.// `name` жана `age` мүнөздөмөлөрү милдеттүү эмес түр түзөт type PartialUser = Partial<{ name: string; age: number }>;Readonly<Type>: БардыкTypeмүнөздөмөлөрү гана окууга арналган түр түзөт.// `name` жана `age` мүнөздөмөлөрү гана окууга арналган type ReadonlyUser = Readonly<{ name: string; age: number }>;Pick<Type, Keys>:TypeичиненKeysтизмесиндеги мүнөздөмөлөрдү тандайт.// `name` мүнөздөмөсү гана камтылган түр түзөт type UserWithName = Pick<{ name: string; age: number }, 'name'>;Omit<Type, Keys>:TypeичиненKeysтизмесиндеги мүнөздөмөлөрдү чыгарып салат.// `name` мүнөздөмөсү жок түр түзөт type UserWithoutName = Omit<{ name: string; age: number }, 'name'>;Exclude<UnionType, ExcludedMembers>:UnionTypeичиненExcludedMembersменен шайкеш келген мүчөлөрдү чыгарып салат.// `null` менен шайкеш келген мүчөлөрдү чыгарып салган түр type NonNullableString = Exclude<string | null | undefined, null | undefined>;Extract<Type, Union>:TypeичиненUnionменен шайкеш келген мүчөлөрдү чыгарып алат.// `null` жана `undefined` чыгарып салынган type JustNullOrUndefined = Extract<string | null | undefined, null | undefined>;NonNull<Type>:nullжанаundefinedчыгарып салган түр түзөт.// `null` жана `undefined` чыгарып салган түр type NonNullStringOrNumber = NonNullable<string | number | null | undefined>;Parameters<Type>: Функциянын параметрлеринин түрлөрүн кортеж түрүндө алат.// Функциянын параметрлеринин түрлөрү: [string, number] type FuncParams = Parameters<(a: string, b: number) => void>;ReturnType<Type>: Функциянын кайтаруучу маанисинин түрүн алат.// Функциянын кайтаруучу маанисинин түрү: number type FuncReturn = ReturnType<() => number>;ConstructorParameters<Type>: Конструктордун параметрлеринин түрлөрүн чыгарып алат.// Класс конструкторунун параметрлеринин түрлөрү: [string, number] type MyClassParams = ConstructorParameters<typeof MyClass>; class MyClass { constructor(name: string, age: number) {} }InstanceType<Type>: Конструктордун типинин инстанциясынын түрүн чыгарып алат.// Класс инстанциясынын түрү: MyClass type MyClassInstance = InstanceType<typeof MyClass>; class MyClass { constructor(name: string, age: number) {} }
Utility типтерди колдонуу – бул көбүрөөк типке коопсуз, ийкемдүү жана оңой колдоого алынган код түзүүгө жардам берет.