Отображение даты на английском и японском языках с помощью moment.js или JQuery / Javascript

1

Я использую date.js для форматирования дат. Я хочу показать дату в культуре "en-JP", но moment.js не поддерживает язык "en-JP".

Код Jquery/Javascript также будет в порядке.

Я хочу показать дату:

2018 年 Авг. 月 15 日 среда

  • 0
    Я уверен, что вы ознакомились с языковым стандартом Moment.js и его документацией по настройке. Если нет, то эта ссылка поможет вам узнать больше о настройке языка momentjs.com/docs/#/customization.
  • 0
    «en-jp» - это код языка, который интерпретируется как «английский как говорят в Японии». Вы уверены, что это настоящий диалект?
Показать ещё 2 комментария
Теги:
datetime
date
momentjs

2 ответа

0
Лучший ответ

Кажется, что "年", "月", "日" являются японскими для "года", "месяца", "дня", поэтому не меняются с датой. Таким образом, вам не нужна библиотека, если имеется разумная поддержка объекта Intl через toLocaleString, например

var d = new Date();
var lang = 'en',
    year = d.toLocaleString(lang, {year:'numeric'}),
    month = d.toLocaleString(lang, {month:'short'}),
    day = d.toLocaleString(lang, {day:'numeric'}),
    dayName = d.toLocaleString(lang, {weekday:'long'});

console.log(
  '${year}年 ${month}月 ${day}日 ${dayName}'
);
  • 0
    Это сработало, большое спасибо!
1

Нет такого формата (2018 年 Aug 月 15 日 среда), который вы спрашиваете в японской культуре.

Но если вам действительно нужен этот формат, вы можете получить его, как показано ниже, с помощью momentjs:

//2018年 Aug月 15日 Wednesday
var moment = moment();

console.log(moment.year() + "年 " + moment.format("MMM") + "月 " + moment.date() + "日 " + moment.format("dddd"));

console.log(moment.format('YYYY年 MMM月 D日 dddd'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
  • 1
    Ну, не только с помощью moment.js. Добавлена более простая строка формата. ;-)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню