Temporal konvertatsiyasi
Temporal konvertatsiya qoidalari
Quyidagi jadvalda Temporal turlarni qanday aylantirish mumkinligi ko‘rsatilgan.
| Nimadan | Plain Sana |
Plain Time |
Plain DateTime |
Zoned DateTime |
Instant |
| PlainDate | Yo‘q | Ha | Yo‘q | Yo‘q | |
| PlainTime | Yo‘q | Yo‘q | Yo‘q | Yo‘q | |
| PlainDateTime | Ha | Ha | Ha | Yo‘q | |
| ZonedDateTime | Ha | Ha | Ha | Ha | |
| Instant | Yo‘q | Yo‘q | Yo‘q | Ha |
Konvertatsiya metodlari
| Nimadan | To | Metod |
|---|---|---|
| Date | Instant | Sana.toTemporalInstant() |
| PlainDate | PlainTime | yo‘q |
| PlainDate | PlainDateTime | Sana.toPlainDateTime() |
| PlainDate | ZonedTime | yo‘q |
| PlainDate | Instant | yo‘q |
| PlainYearMonth | PlainDate | yearmonth.toPlainDate() |
| PlainMonthDay | PlainDate | monthday.toPlainDate() |
| PlainDateTime | PlainDate | datetime.toPlainDate() |
| PlainDateTime | PlainTime | datetime.toPlainTime() |
| PlainDateTime | ZonedDateTime | datetime.toZonedDateTime() |
| PlainDateTime | Instant | yo‘q |
| ZonedDateTime | PlainDate | zoned.toPlainDate() |
| ZonedDateTime | PlainDateTime | zoned.toPlainDateTime() |
| ZonedDateTime | PlainTime | zoned.toPlainTime() |
| ZonedDateTime | Instant | zoned.toInstant() |
| Instant | ZonedDateTime | zoned.toZonedDateTimeISO() |
Eski Date’dan Temporal Instant’ga
Misol
const legacyDate = new Date();
const instant = legacyDate.toTemporalInstant();
O‘zingiz sinab ko‘ring »
PlainDate’dan PlainDateTime’ga
Vaqtni qo‘shishingiz mumkin.
Misollar
const date = Temporal.PlainDate.from("2026-05-17");
const dateTime = date.toPlainDateTime();
O‘zingiz sinab ko‘ring »
const date = Temporal.PlainDate.from("2026-05-17");
const dateTime = date.toPlainDateTime("14:30");
O‘zingiz sinab ko‘ring »
Sana va vaqtni birlashtirish
PlainDateTime obyektini yaratish uchun PlainDate va PlainTime ni birlashtira olasiz.
Misol
// Create a PlainDate object
const date = Temporal.PlainDate.from("2026-05-17");
// Create a PlainTime object
const time = Temporal.PlainTime.from("14:30");
// Convert into a PlainDateTime object
const dateTime = date.toPlainDateTime(time);
O‘zingiz sinab ko‘ring »
PlainDateTime’dan PlainDate’ga
Misol
const dateTime = Temporal.PlainDateTime.from("2026-05-17T14:30");
const date = dateTime.toPlainDate();
O‘zingiz sinab ko‘ring »
PlainDateTime’dan PlainTime’ga
Misol
const dateTime = Temporal.PlainDateTime.from("2026-05-17T14:30");
const time = dateTime.toPlainTime();
O‘zingiz sinab ko‘ring »
PlainDateTime’dan ZonedDateTime’ga
PlainDateTime vaqt mintaqasini o‘z ichiga olmaydi.
ZonedDateTime yaratish uchun uni ko‘rsatishingiz shart.
Wrong
const dateTime = Temporal.PlainDateTime.from("2026-05-17T14:30");
const zoned = dateTime.toZonedDateTime();
To‘g‘ri
const dateTime = Temporal.PlainDateTime.from("2026-05-17T14:30");
const zoned = dateTime.toZonedDateTime("Europe/Oslo");
O‘zingiz sinab ko‘ring »
ZonedDateTime’dan PlainDateTime’ga
Misol
const zoned = Temporal.ZonedDateTime.from("2026-05-17T14:30:00+02:00[Europe/Oslo]");
const dateTime = zoned.toPlainDateTime();
O‘zingiz sinab ko‘ring »
ZonedDateTime’dan PlainDate’ga
Misol
const zoned = Temporal.ZonedDateTime.from("2026-05-17T14:30:00+02:00[Europe/Oslo]");
const date = zoned.toPlainDate();
O‘zingiz sinab ko‘ring »
ZonedDateTime’dan PlainTime’ga
Misol
const zoned = Temporal.ZonedDateTime.from("2026-05-17T14:30:00+02:00[Europe/Oslo]");
const time = zoned.toPlainTime();
O‘zingiz sinab ko‘ring »
ZonedDateTime’dan Instant’ga
Misol
const zoned = Temporal.ZonedDateTime.from("2026-05-17T14:30:00+02:00[Europe/Oslo]");
const instant = zoned.toInstant();
O‘zingiz sinab ko‘ring »
Instant’dan ZonedDateTime’ga
Instant toZonedDateTime() usuliga ega emas.
Avval uni ISO zonasiga aylantirishingiz kerak.
Wrong
const instant = Temporal.Instant.from("2026-05-17T12:30:00Z");
const zoned = instant.toZonedDateTime("Europe/Oslo");
O‘zingiz sinab ko‘ring »
To‘g‘ri
const instant = Temporal.Instant.from("2026-05-17T12:30:00Z");
const zoned = instant.toZonedDateTimeISO("Europe/Oslo");
O‘zingiz sinab ko‘ring »
Maxsus Temporal tiplari
| Nimadan | toPlainDate() | toPlainDateTime() | toZonedDateTime() |
|---|---|---|---|
| PlainYearMonth | Ha + day value |
Yo‘q | Yo‘q |
| PlainMonthDay | Ha + year value |
Yo‘q | Yo‘q |
PlainMonthDay va PlainYearMonth to‘liq sana bo‘lishidan oldin yetishmayotgan qismlarga muhtoj.
PlainYearMonth’dan PlainDate’ga
Misol
const yearMonth = new Temporal.PlainYearMonth(2026, 5);
const date = yearMonth.toPlainDate({ day: 17 });
O‘zingiz sinab ko‘ring »
PlainMonthDay’dan PlainDate’ga
Misol
const monthDay = new Temporal.PlainYearMonth(2026, 5);
const date = monthDay.toPlainDate({ year: 2026 });
O‘zingiz sinab ko‘ring »
Vaqt zonasini konvertatsiya qilish
Boshqa vaqt zonasidagi vaqtni o‘girish ZonedDateTime’ning withTimeZone() metodi orqali amalga oshiriladi.
Misol
const zdtOslo = Temporal.Now.zonedDateTimeISO('Europe/Oslo');
const zdtTokyo = zdtOslo.withTimeZone('Asia/Tokyo');
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
