Происхождение «Mon Jan 2 15:04:05 MST 2006» в голанге

23

В golang документации указано, что:

  

Это предопределенные макеты для использования в Time.Format и Time.Parse.   Исходным временем, используемым в макетах, является:

     

Mon Jan 2 15:04:05 MST 2006      

, которое является временем Unix 1136239445

Каково происхождение этой конкретной даты?

    
задан guigui42 11.12.2013 в 22:32
источник
  • 15:04:05 только после 3 вечера ... 1 2 3 4 5 6? –  jthill 11.12.2013 в 22:36
  • Эта дата не содержит неоднозначных полей. Если я пишу 2 / 2006.1, 4 / 3.5, совершенно ясно, какой номер принадлежит той части даты. –  fuz 11.12.2013 в 22:44

2 ответа

37

Это объясняется сразу после цитируемого раздела:

  

Так как МСТ является GMT-0700, опорное время можно рассматривать как      

01/02 03:04:05PM '06 -0700

Это простая последовательность: 01 02 03 04 05 (PM) 06 07.

Использование 03:04 PM , а не 03:04 AM позволяет более четко показать два представления времени 15:04 и 03:04PM (это предположение с моей стороны).

    
ответ дан Keith Thompson 11.12.2013 в 23:23
источник
  • Да, но почему PM, интересно? –  Tim Pierce 11.12.2013 в 23:26
  • @qwrrty: см. мой обновленный ответ. –  Keith Thompson 11.12.2013 в 23:31
  • Почему они просто не использовали 2001-02-03 03:04:05 PM -0700 или что-то в этом роде. :( Было бы намного легче запомнить, чем 2 января 2006 года. –  AndreKR 28.08.2017 в 09:38
  • @AndreKR: Зачем вам это нужно помнить? –  Keith Thompson 28.08.2017 в 17:18
  • @KeithThompson Я пришел сюда, потому что мне пришлось это сделать, потому что я написал время. ParseInLocation («и это не имеет ссылочной даты во встроенных документах». –  AndreKR 28.08.2017 в 17:24
10

Это просто цифры 1 2 3 4 5 6 7

1: месяц (январь, январь, и т. д.)

2: день

3: час (15 - 3 часа в сутки)

4: минута

5: секунд

6: год (2006)

7: часовой пояс (GMT-7 - MST)

    
ответ дан Stephen Weinberg 11.12.2013 в 23:23
источник