Temporal konvertatsiyasi


ULASHISH

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

NimadanToMetod
DateInstantSana.toTemporalInstant()
 
PlainDatePlainTimeyo‘q
PlainDatePlainDateTimeSana.toPlainDateTime()
PlainDateZonedTimeyo‘q
PlainDateInstantyo‘q
 
PlainYearMonthPlainDateyearmonth.toPlainDate()
PlainMonthDayPlainDatemonthday.toPlainDate()
 
PlainDateTimePlainDatedatetime.toPlainDate()
PlainDateTimePlainTimedatetime.toPlainTime()
PlainDateTimeZonedDateTimedatetime.toZonedDateTime()
PlainDateTimeInstantyo‘q
 
ZonedDateTimePlainDatezoned.toPlainDate()
ZonedDateTimePlainDateTimezoned.toPlainDateTime()
ZonedDateTimePlainTimezoned.toPlainTime()
ZonedDateTimeInstantzoned.toInstant()
 
InstantZonedDateTimezoned.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!