TypeScript obyekt tiplari


TypeScript-da obyektlarni yozish uchun maxsus sintaksis mavjud.

Obyektlar haqida ko‘proq ma’lumotni JavaScript Objects chapter sahifamizda o‘qing.


Misol

const car: { type: string, model: string, year: number } = {
  type: "Toyota",
  model: "Corolla",
  year: 2009
};
O‘zingiz sinab ko‘ring »

Bu kabi obyektlar turlarini alohida yozish va hatto qayta ishlatish mumkin, batafsil ma’lumot uchun interfaces ga qarang.



ULASHISH

Xulosa yozing

TypeScript xususiyatlar turlarini ularning qiymatlariga qarab xulosa qilishi mumkin.

Misol

const car = {
  type: "Toyota",
};
car.type = "Ford"; // no error
car.type = 2; // Error: Type 'number' is not assignable to type 'string'.
O‘zingiz sinab ko‘ring »

Ixtiyoriy xususiyatlar

Ixtiyoriy xususiyatlar - obyekt ta’rifida aniqlanishi shart bo‘lmagan xususiyatlar.

Ixtiyoriy xususiyatsiz misol

const car: { type: string, mileage: number } = { // Error: Property 'mileage' is missing in type '{ type: string; }' but required in type '{ type: string; mileage: number; }'.
  type: "Toyota",
};
car.mileage = 2000;

Ixtiyoriy xususiyatga ega misol

const car: { type: string, mileage?: number } = { // no error
  type: "Toyota"
};
car.mileage = 2000;
O‘zingiz sinab ko‘ring »

Indeks imzolari

Indeks imzolari aniqlangan xususiyatlar ro‘yxati bo‘lmagan obyektlar uchun ishlatilishi mumkin.

Misol

const nameAgeMap: { [index: string]: number } = {};
nameAgeMap.Jack = 25; // no error
nameAgeMap.Mark = "Fifty"; // Error: Type 'string' is not assignable to type 'number'.
O‘zingiz sinab ko‘ring »

Bu kabi indeks imzolari Record<string, number> kabi yordamchi dasturlar bilan ham ifodalanishi mumkin.

Bizning TypeScript Utility Types bo‘limimizda shunga o‘xshash yordam turlari haqida ko‘proq bilib oling.




W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!