Skip to content

JavaScript Temporal.PlainDate ​

Temporal.PlainDate obyekti vaqt zonasi va vaqtisiz faqat kalendar sanasini (yil, oy, kun) ifodalaydi.

U asosan tug'ilgan kunlar, bayramlar yoki ma'lum bir kunni belgilash uchun ishlatiladi (chunki bu kunlar dunyoning qayerida bo'lishingizdan qat'i nazar o'zgarmaydi).


PlainDate yaratish ​

PlainDate obyektini matndan yoki aniq raqamlardan yaratish mumkin. Tartib: YYYY-MM-DD.

Misollar

  • Matndan olish: const sana = Temporal.PlainDate.from('2026-05-17');
  • Raqamlardan yaratish: const sana = new Temporal.PlainDate(2026, 5, 17);

Muhim: Date obyektidan farqli o'laroq, Temporal API-da oylar 1 dan sanaladi (Yanvar = 1).


Hozirgi sanani olish ​

Bugungi kalendar sanasini olish uchun plainDateISO() metodidan foydalaning:

js
const bugun = Temporal.Now.plainDateISO();

Kunlarni qo'shish va ayirish ​

Temporal obyektlari o'zgarmas (immutable) bo'lgani uchun, add() yoki subtract() metodlari yangi obyekt qaytaradi:

Misol

js
let sana = Temporal.PlainDate.from("2026-05-17");
let keyingiHafta = sana.add({ days: 7 });
let oldingiHafta = sana.subtract({ days: 7 });

Sanalarni solishtirish ​

Temporal sanalarini solishtirish uchun compare() yoki equals() metodlaridan foydalanish tavsiya etiladi:

  • compare(a, b): Agar a oldin kelsa -1, teng bo'lsa 0, keyin kelsa 1 qaytaradi.
  • equals(b): Ikki sana aynan bir xilligini tekshiradi (true/false).
js
const a = Temporal.PlainDate.from("2026-02-17");
const b = Temporal.PlainDate.from("2026-03-01");

let natija = Temporal.PlainDate.compare(a, b); // -1 qaytaradi

Temporal.PlainTime ​

Faqat vaqtni (sanasiz) ifodalash uchun Temporal.PlainTime ishlatiladi:

js
const vaqt = new Temporal.PlainTime(10, 30); // 10:30:00

PlainDate xususiyatlari (Properties) ​

Ushbu obyekt sanaga oid ko'plab foydali ma'lumotlarni taqdim etadi:

  • day: Kun (1-31).
  • month: Oy (1-12).
  • year: Yil.
  • dayOfWeek: Hafta kuni (1 = Dushanba).
  • inLeapYear: Kabisa yili ekanligi (true/false).

Xulosa ​

Temporal.PlainDate va PlainTime murakkab vaqt zonalarisiz faqat sana yoki vaqt bilan ishlash uchun eng ishonchli usuldir. Ularning o'zgarmasligi va oylarni 1 dan sanashi kodni yanada tushunarli qiladi.