Получить день недели текущего времени в указанном часовом поясе - PullRequest
0 голосов
/ 19 июня 2020

Мне нужно получить день недели текущего времени в указанном часовом поясе и без использования библиотек. Пронумерованные дни недели или строки подходят.

Я использовал этот подход для переключения часового пояса:

new Date().toLocaleString("en-US", {timeZone: "America/Chicago"})

, но вывод - это строка, поэтому я не могу использовать дату logi c в нем.

PS: Я использую Google Apps Script, поэтому я не упомянул никаких библиотек.

Ответы [ 3 ]

3 голосов
/ 19 июня 2020

вы можете использовать для этого специальные опции:

{ weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };

, чтобы показать день недели:

new Date().toLocaleString('en-US', {day: '2-digit', timeZone: 'America/Chicago' })

или показать полное название дня:

new Date().toLocaleString('en-US', {weekday: 'long',   timeZone: 'America/Chicago' })
1 голос
/ 19 июня 2020

Я предлагаю вам использовать Intl.DateTimeFormat

const formatter = new Intl.DateTimeFormat('en-US', {
    timeZone: "America/Chicago",
    weekday: 'long',
})

console.log(formatter.formatToParts(new Date()))
// you get an array like : [{type: "weekday", value: "Friday"}]
0 голосов
/ 19 июня 2020

Для этого вы можете использовать Момент . Дает дни недели из местных.

moment.months()
moment.monthsShort()
moment.weekdays()
moment.weekdaysShort()
moment.weekdaysMin()
It is sometimes useful to get the list of months or weekdays in a locale, for example when populating a dropdown menu.

moment.months();
Returns the list of months in the current locale.

[ 'January',
  'February',
  'March',
  'April',
  'May',
  'June',
  'July',
  'August',
  'September',
  'October',
  'November',
  'December' ]
Similarly, moment.monthsShort returns abbreviated month names, and moment.weekdays, moment.weekdaysShort, moment.weekdaysMin return lists of weekdays.

You can pass an integer into each of those functions to get a specific month or weekday.

moment.weekdays(3); // 'Wednesday'
As of 2.13.0 you can pass a bool as the first parameter of the weekday functions. If true, the weekdays will be returned in locale specific order. For instance, in the Arabic locale, Saturday is the first day of the week, thus:

moment.locale('ar');
moment.weekdays(true); // lists weekdays Saturday-Friday in Arabic
moment.weekdays(true, 2); //will result in Monday in Arabic

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...