Spec-Zone.ru › JavaScript

Temporal.PlainMonthDay.prototype.day

Базовый уровень Ограниченная доступность

Эта функция не относится к базовому уровню, поскольку она не работает в некоторых из наиболее широко используемых браузеров.

Свойство-аксессор day экземпляров Temporal.PlainMonthDay возвращает положительное целое число, представляющее 1-основанный индекс дня в месяце для этой даты, что соответствует номеру дня, который вы увидите в календаре. Оно зависит от календаря.

Аксессор установки (set accessor) day — это undefined. Вы не можете изменить это свойство напрямую. Используйте метод with() для создания нового объекта Temporal.PlainMonthDay с желаемым новым значением.

Для получения общей информации и дополнительных примеров см. Temporal.PlainDate.prototype.day.

Примеры

Использование day

const md = Temporal.PlainMonthDay.from("07-01"); // ISO 8601 calendar
console.log(md.day); // 1

const md2 = Temporal.PlainMonthDay.from("2021-07-01[u-ca=chinese]");
console.log(md2.day); // 22; it is May 22 in the Chinese calendar

Изменение day

const md = Temporal.PlainMonthDay.from("07-01");
const newMD = md.with({ day: 15 });
console.log(newMD.toString()); // 07-15

По умолчанию, with() ограничивает день диапазоном допустимых значений. Таким образом, вы можете использовать { day: 1 }, чтобы установить день равным первому дню месяца, даже если первый день не имеет номера 1. Аналогично, следующее установит день равным последнему дню месяца:

const md = Temporal.PlainMonthDay.from("07-01");
const lastMD = md.with({ day: Number.MAX_VALUE }); // 07-31

Для целей PlainMonthDay считается, что в феврале всегда 29 дней.

const md = Temporal.PlainMonthDay.from("02-01");
const lastMD = md.with({ day: Number.MAX_VALUE }); // 02-29
console.log(lastMD.day); // 29

Для других календарей, пока существует год, в котором месяц-день действителен, месяц-день считается действительным, и, следовательно, базовый ссылочный год может измениться. Например:

const md = Temporal.PlainMonthDay.from({
  monthCode: "M02",
  day: 29,
  calendar: "hebrew",
});
console.log(md.toString()); // 1972-11-06[u-ca=hebrew]
console.log(md.toLocaleString("en-US", { calendar: "hebrew" })); // 29 Heshvan
const lastMD = md.with({ day: Number.MAX_VALUE });
// 30 Heshvan does not exist in 1972, so the reference year changes to 1971
console.log(lastMD.toString()); // 1971-11-18[u-ca=hebrew]
console.log(lastMD.toLocaleString("en-US", { calendar: "hebrew" })); // 30 Heshvan

Спецификации

Спецификация
Temporal
# sec-get-temporal.plainmonthday.prototype.day

Совместимость с браузерами

Десктоп Мобильные Сервер
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
day
144
144
139
128
предварительная версия
144
139
95
Нет
Нет
144
Нет
1.4.0
2.7
26.0.0

См. также

  • Temporal.PlainMonthDay
  • Temporal.PlainMonthDay.prototype.with()
  • Temporal.PlainMonthDay.prototype.monthCode

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal/PlainMonthDay/day

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API