Rolą tego artykułu nie jest próba udowodnienia wyższości języka JavaScript nad PHP czy odwrotnie. Tekst ten kieruję do osób, które ze zrozumiałych im przyczyn nie mają dostępu do PHP, a chciałyby urozmaicić swoją stronę motywem daty itp. znanym z PHP
jako gmdate(). Tym właśnie osobom chciałbym przybliżyć język JavaScript, którym możemy uzyskać podobny efekt jak w przypadku PHP czy innych języków skryptowych.
Chcąc otrzymać prostą, schludną datę w PHP posłużymy się najprostszym skryptem:
| <?php echo gmdate(d m y); ?> |
Efektem tego będzie np. 01 08 2003 (zależy od dnia). Wiemy również, że w PHP można zastosować cały szereg różnych poleceń począwszy od wyświetlania „am” lub „pm” przy godzinie, kończywszy na podawaniu przesunięcia strefy czasowej w sekundach. Chcąc uzyskać podobne efekty w JavaScript będziemy musieli napracować się trochę dłużej (ale tylko trochę). Zacznijmy od funkcji której będziemy używać czyli:
| new Date() |
. Funkcja ta zwraca nam datę, godzinę itp, ale w sposób mało czytelny np. Sat Mar 2 16:47:28 UTC+0100 2002. Dlatego chcąc uzyskać datę w postaci 22.03.2002 musimy napisać prosty skrypt:
| <script language=”javascript”> var data=new Date() var dzien=data.getDate() var miesiac=data.getMonth() var rok=data.getYear() document.write(dzien + „-” + miesiac + „-” + rok); </script> |
W efekcie mamy datę w postaci 22-11-2002, ale w przypadku pierwszych dni miesiąca, oraz pierwszych miesięcy nie uzyskamy wyniku 01-02-2002 a 1-2-2002 chyba, że użyjemy tablic, ale o tym za chwilę. Przypuśćmy, że chcemy napisać skrypt wyświetlający dzień tygodnia jako nazwę oraz miesiąc i rok, będziemy musieli użyć wcześniej wspomnianych tablic.
| <script language=”javascript”> var data=new Date() var dzien=data.getDay() var dzienmiesiaca=data.getDate() var miesiac=data.getMonth() var rok=data.getYear() var dzientygodnia=new Array(„Niedziela”,”Poniedziałek”, „Wtorek”, „Środa”, „Czwartek”, „Piątek”, „Sobota”) var nazwamiesiaca=new Array(„Styczen”, „Luty”, „Marzec”, „Kwiecień”, „Maj”, „Czerwiec”, „Lipiec”, „Sierpień”, „Wrzesień”, „Październik”, „Listopad”, „Grudzień”) document.write(dzientygodnia[dzien]+”-„+dzienmiesiaca+”-„+nazwamiesiaca[miesiac]+”-„+rok) </script> |
Na koniec możemy cały skrypt podpiąć do pliku np. „data.js” i wstawić na stronę dwoma linijkami:
| <script src=”data.js”> </script> |
Tym miłym akcentem 😉 kończę ten artykuł, a dla bardziej ambitnych polecam poniższą tabelę.
| Metoda | Zakres wartości | Opis |
| ObiektDate.getTime() | 0-… | Liczba sekund od dnia 01-01-1970 od godziny 00:00:00 czasu Greenwitch |
| ObiektDate.getYear() | 70-… | Bieżący rok |
| ObiektDate.getMonth() | 0-11 | Bieżący miesiąć 0-styczeń |
| ObiektDate.getDate() | 1-31 | Bieżący dzień miesiąca |
| ObiektDate.getDay() | 0-6 | Bieżący dzień tygodnia 0-niedziela |
| ObiektDate.getHours() | 0-23 | Bieżąca godzina dnia |
| ObiektDate.getMinutes() | 0-59 | Bieżąca minuta |
| ObiektDate.getSeconds() | 0-59 | Bieżąca sekunda |
