TypeScript utility tiplari


TypeScript ko‘p sonli turlar bilan birga keladi, ular ba’zi bir umumiy turdagi manipulyatsiyalarda yordam beradi, odatda yordam turlari deb ataladi.

Ushbu bo‘lim eng mashhur yordamchi dasturlarni o‘z ichiga oladi.


ULASHISH

Qisman

Partial obyektdagi barcha xususiyatlarni ixtiyoriy qilib o‘zgartiradi.

Misol

interface Point {
  x: number;
  y: number;
}

let pointPart: Partial<Point> = {}; // `Partial` allows x and y to be optional
pointPart.x = 10;
O‘zingiz sinab ko‘ring »


Majburiy

Required obyektdagi barcha xususiyatlarni talab qilinadigan o‘zgartiradi.

Misol

interface Car {
  make: string;
  model: string;
  mileage?: number;
}

let myCar: Required<Car> = {
  make: 'Ford',
  model: 'Focus',
  mileage: 12000 // `Required` forces mileage to be defined
};
O‘zingiz sinab ko‘ring »

Yozib olish

Record - muayyan kalit turi va qiymat turi bilan obyekt turini aniqlash uchun yorliq.

Misol

const nameAgeMap: Record<string, number> = {
  'Alice': 21,
  'Bob': 25
};
O‘zingiz sinab ko‘ring »

Record<string, number> { [key: string]: number }’ga ekvivalent


O‘tkazib yubormang

Omit obyekt turidan kalitlarni olib tashlaydi.

Misol

interface Person {
  name: string;
  age: number;
  location?: string;
}

const bob: Omit<Person, 'age' | 'location'> = {
  name: 'Bob'
  // `Omit` has removed age and location from the type and they can't be defined here
};
O‘zingiz sinab ko‘ring »

Tanlash

Pick obyekt turidan ko‘rsatilgan kalitlardan tashqari hammasini olib tashlaydi.

Misol

interface Person {
  name: string;
  age: number;
  location?: string;
}

const bob: Pick<Person, 'name'> = {
  name: 'Bob'
  // `Pick` has only kept name, so age and location were removed from the type and they can't be defined here
};
O‘zingiz sinab ko‘ring »

Cheklash

Exclude birlashmadan turlarni olib tashlaydi.

Misol

type Primitive = string | number | boolean
const value: Exclude<Primitive, string> = true; // a string cannot be used here since Exclude removed it from the type.
O‘zingiz sinab ko‘ring »

Qaytish turi

ReturnType funksiya turining qaytish turini chiqaradi.

Misol

type PointGenerator = () => { x: number; y: number; };
const point: ReturnType<PointGenerator> = {
  x: 10,
  y: 20
};
O‘zingiz sinab ko‘ring »

Parametrlar

Parameters massiv sifatida funksiya turining parametr turlarini chiqaradi.

Misol

type PointPrinter = (p: { x: number; y: number; }) => void;
const point: Parameters<PointPrinter>[0] = {
  x: 10,
  y: 20
};
O‘zingiz sinab ko‘ring »

Faqat o‘qish

Readonly barcha xususiyatlar faqat o‘qiladigan yangi tur yaratish uchun ishlatiladi, ya’ni qiymat berilgandan keyin ularni o‘zgartirib bo‘lmaydi.

Esda tutingki, TypeScript kompilyatsiya vaqtida buni oldini oladi, lekin nazariy jihatdan u JavaScript-ga kompilyatsiya qilingani uchun siz hali ham faqat o‘qish xususiyatini bekor qilishingiz mumkin.

Misol

interface Person {
  name: string;
  age: number;
}
const person: Readonly<Person> = {
  name: "Dylan",
  age: 35,
};
person.name = 'Israel'; // prog.ts(11,8): error TS2540: Cannot assign to 'name' because it is a read-only property.
O‘zingiz sinab ko‘ring »



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!