JavaScript | Дата формата YYYY-MM-DD

JavaScript | Дата формата YYYY-MM-DD

Как получить дату формата YYYY-MM-DD при помощи JavaScript?

new Date().toLocaleDateString('en-ca')
"2021-07-26"

Получение новой даты всегда сопровождается оператором new.

Метод toLocaleDateString() принимает на вход строку в виде языкового тега en и идентификатора календаря ca.

Дата формата YYYY-MM-DD - JavaScript
Дата формата YYYY-MM-DD — JavaScript

 

Справка из документации «ecma262»

Реализация ECMAScript, включающая API-интерфейс интернационализации ECMA-402, должна реализовывать метод Date.prototype.toLocaleDateString, как указано в спецификации ECMA-402. Если реализация ECMAScript не включает API ECMA-402, используется следующая спецификация метода toLocaleDateString.

Эта функция возвращает значение String. Содержимое String определяется реализацией, но предназначено для представления «даты» части Date в текущем часовом поясе в удобной, удобочитаемой форме, которая соответствует соглашениям текущей локали среды хоста.

Значение дополнительных параметров этого метода определено в спецификации ECMA-402; реализации, которые не включают поддержку ECMA-402, не должны использовать эти позиции параметров ни для чего другого.

 

Справка из документации «ecma402»

Языковые теги

Спецификация API интернационализации ECMAScript 2021 определяет локали с использованием идентификаторов локалей Unicode BCP 47, как определено Техническим стандартом Unicode # 35 LDML § 3 Идентификаторы локали и языка Unicode (Unicode Technical Standard #35 LDML § 3 Unicode Language and Locale Identifiers), которые могут включать такие расширения, как Unicode BCP 47 U Extension. Их каноническая форма указана в Техническом стандарте Unicode № 35 LDML § 3.2.1 Канонические идентификаторы локали Unicode (Unicode Technical Standard #35 LDML § 3.2.1 Canonical Unicode Locale Identifiers).

Идентификаторы локали Unicode BCP 47 являются структурно действительными, если они соответствуют этим синтаксическим критериям форматирования Технического стандарта Unicode 35, раздел 3.2 (Unicode Technical Standard 35, section 3.2), но не требуется их валидация в соответствии с данными валидации Unicode. Все структурно допустимые языковые теги допустимы для использования с API, определенными в этом стандарте. Однако набор локалей и, следовательно, языковых тегов, поддерживаемых реализацией с соответствующими локализацией, зависит от реализации. Конструкторы Collator, NumberFormat, DateTimeFormat, PluralRules, ListFormat и DisplayNames сопоставляют языковые теги, используемые в запросах, с языковыми стандартами, поддерживаемыми их соответствующими реализациями.

 

Справка из документа UNICODE LOCALE DATA MARKUP LANGUAGE (LDML) из раздела «3.6 Unicode BCP 47 U Extension»

«Идентификатор календаря Unicode» определяет тип календаря. Допустимые значения — это те значения атрибута «name» в элементах «type» ключа name = «ca» в bcp47 / calendar.xml.

 

Информационные ссылки

Стандарт ECMAScript — Раздел «21.4 Date Objects» — https://tc39.es/ecma262/multipage/numbers-and-dates.html#sec-date-objects

Стандарт ECMAScript — Раздел «21.4.4.38 Date.prototype.toLocaleDateString ( [ reserved1 [ , reserved2 ] ] )» — https://tc39.es/ecma262/multipage/numbers-and-dates.html#sec-date.prototype.tolocaledatestring