Skip to content

JavaScript Temporal.Duration

Temporal.Duration obyekti vaqtning davomiyligini (masalan, "2 soat-u 30 minut") ifodalaydi.

U yil, oy, hafta, kun, soat, minut, sekund va hatto nanosekundlargacha bo'lgan vaqt oralig'ini saqlashi mumkin.


Duration yaratish

Davomiylik obyektini aniq raqamlar yoki obyekt ko'rinishida yaratish mumkin:

Misollar

  • Raqamlar bilan: const davomiylik = new Temporal.Duration(0, 0, 0, 7); (7 kun)
  • Obyekt bilan: const davomiylik = Temporal.Duration.from({ days: 7, hours: 2 });

Konstruktor parametrlarining tartibi: yil, oy, hafta, kun, soat, minut, sekund, ms, mks, ns.


Davomiylikni qo'shish va ayirish

Sana yoki vaqt obyektlariga Duration qo'shish juda oddiy. Bunda asosiy obyekt o'zgarmaydi:

js
const sana = Temporal.PlainDate.from("2026-02-17");
const yettiKun = Temporal.Duration.from({ days: 7 });

const yangiSana = sana.add(yettiKun); // 2026-02-24

Ikki sana orasidagi farqni hisoblash

Temporal-da bir sanadan ikkinchisigacha qancha vaqt borligini aniqlash uchun until() (gacha) yoki since() (dan beri) metodlaridan foydalaniladi:

Misol

js
const toy = Temporal.PlainDate.from('2026-05-17');
const bugun = Temporal.Now.plainDateISO();

const qanchaQoldi = bugun.until(toy); 
// Toygacha qancha vaqt qolganini Duration sifatida qaytaradi

ISO 8601 Davomiylik formati

Duration obyektlarini maxsus matn ko'rinishida ham yozish mumkin. Formati: PnYnMnWnDTnHnMnS. Masalan: "P3Y6M4DT12H30M5S" — 3 yil, 6 oy, 4 kun, 12 soat, 30 minut va 5 sekund degani.

KodMa'nosi
PDavr ko'rsatkichi (Period)
YYillar (Years)
MOylar (Months)
WHaftalar (Weeks)
DKunlar (Days)
TVaqt bo'limi boshlanishi
HSoatlar (Hours)

Qachon Duration-dan foydalanish kerak?

  • Vaqtni qo'shish yoki ayirish kerak bo'lganda.
  • Yoshni (umr davomiyligini) hisoblashda.
  • Ikki vaqt orasidagi farqni o'lchashda.
  • Ma'lum bir vaqt oralig'i (masalan, "taymer") bilan ishlashda.

Xulosa

Temporal.Duration vaqt oraliqlarini hisoblashni juda osonlashtiradi. U millisekundlarni qo'lda hisoblab yurishdan ko'ra ancha xavfsiz va o'qishga qulaydir.