Nie wiem zbyt wiele o Javascript, a pozostałe pytania, które znalazłem, dotyczą operacji na datach, a nie tylko uzyskiwania informacji, których potrzebuję.
Cel
Chcę otrzymać datę w poniższym formacie:
Wydrukowano w czwartek, 27 stycznia 2011 o 17:42:21
Do tej pory otrzymałem:
var now = new Date();
var h = now.getHours();
var m = now.getMinutes();
var s = now.getSeconds();
h = checkTime(h);
m = checkTime(m);
s = checkTime(s);
var prnDt = "Printed on Thursday, " + now.getDate() + " January " + now.getFullYear() + " at " + h + ":" + m + ":" s;
Muszę teraz wiedzieć, jak uzyskać dzień tygodnia i miesiąc roku (ich nazwy).
Czy istnieje prosty sposób, aby to zrobić, czy też powinienem rozważyć użycie tablic, w których po prostu indeksowałbym odpowiednią wartość za pomocą now.getMonth()
i now.getDay()
?
javascript
datetime
dayofweek
Will Marcouiller
źródło
źródło
Date
obiekcie. Zaktualizuję za minutę.Użyj standardowej klasy Date w javascript. Nie ma potrzeby stosowania tablic. Nie ma potrzeby posiadania dodatkowych bibliotek.
Zobacz https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString
źródło
saturday
zamiastsaturday, 9th february 2019
.new Date().toLocaleTimeString(language, { weekday: 'long'}).split(' ')[0]
Jedną z rzeczy, które możesz również zrobić, jest Extend date, aby zwrócić dzień tygodnia przez:
więc możesz wywołać tylko date.getWeekDay ();
źródło
Jak już zasugerował @ L-Ray , możesz również zajrzeć do momentu.js .
Próba
źródło
Niestety
Date
obiekt w javascript zwraca informacje o miesiącach tylko w formacie liczbowym. Szybszą rzeczą jest utworzenie tablicy miesięcy (nie powinny się one często zmieniać!) I utworzenie funkcji zwracającej nazwę na podstawie liczby.Coś takiego:
Twój kod staje się zatem:
źródło
new Array()
chyba że masz ku temu powód. Zapis[]
jest znacznie jaśniejszy i łatwiejszy do zrozumieniaźródło
Używając http://phrogz.net/JS/FormatDateTime_JS.txt możesz po prostu:
źródło
Od https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString
Metoda toLocaleDateString () zwraca ciąg znaków z reprezentacją części daty tej daty, uwzględniającą język. Nowe argumenty lokalne i opcje pozwalają aplikacjom określać język, którego konwencje formatowania mają być używane, i pozwalają na dostosowanie zachowania funkcji. W starszych implementacjach, które ignorują argumenty lokalne i opcje, używane ustawienia narodowe i forma zwracanego ciągu są całkowicie zależne od implementacji.
Długa forma:
Jedna wkładka:
Uwaga: istnieją inne opcje językowe dla lokalizacji, ale ta przedstawiona tutaj dla języka angielskiego (USA)
źródło
Możesz na przykład spojrzeć na datejs, które analizują zlokalizowane dane wyjściowe.
W Twoim przykładzie formatowanie może wyglądać następująco:
źródło
To proste. Możesz ustawić opcję wyświetlania tylko dni tygodnia w toLocaleDateString (), aby uzyskać nazwy. Na przykład:
(new Date ()). toLocaleDateString ('en-US', {weekday: 'long'}) zwróci tylko dzień tygodnia. Natomiast (new Date ()). ToLocaleDateString ('en-US', {month: 'long'}) zwróci tylko miesiąc roku.
źródło
źródło
Wpisz Date = document.write (Date ());
źródło