Kurs języka HTML i CSS

Poradnik webmastera

  • Zwiększ rozmiar czcionki
  • Domyślny  rozmiar czcionki
  • Zmniejsz rozmiar czcionki

Typy danych

Email Drukuj PDF

W języku JavaScript występuje kilka typów, czyli rodzajów danych, które są wbudowane w język. Można je podzielić następująco:

  • typ liczbowy,

  • typ łańcuchowy,

  • typ logiczny,

  • typ obiektowy,

  • typy specjalne.

Typ liczbowy

Typ liczbowy służy do reprezentacji liczb, przy czym nie ma występującego w klasycznych językach programowania rozróżnienia na typy całkowitoliczbowe i rzeczywiste (zmiennopozycyjne). Liczby zapisywane są za pomocą literałów (inaczej stałych napisowych, z ang. string constant, literal constant) liczbowych. Obowiązują przy tym następujące zasady:

  • Jeżeli ciąg cyfr nie jest poprzedzony żadnym znakiem lub jest poprzedzony znakiem +, reprezentuje on wartość dodatnią; jeżeli natomiast jest poprzedzony znakiem , reprezentuje wartość ujemną.

  • Jeżeli literał rozpoczyna się od cyfry zero, jest traktowany jako wartość ósemkowa.

  • Jeżeli literał rozpoczyna się od ciągu znaków 0x, jest traktowany jako wartość szesnastkowa (heksadecymalna). W zapisie wartości szesnastkowych mogą być wykorzystywane zarówno małe, jak i duże litery alfabetu od A do F.

  • Literały mogą być zapisywane w notacji wykładniczej, w postaci X.YeZ, gdzie X to część całkowita, Y część dziesiętna, natomiast Z to wykładnik potęgi liczby 10. Zapis taki oznacza to samo, co X.Y * 10Z.

Przykłady literałów:

123

dodatnia całkowita wartość dziesiętna 123

-123

ujemna całkowita wartość dziesiętna –123

012

dodatnia całkowita wartość ósemkowa równa 10 dziesiętnie

-024

ujemna całkowita wartość ósemkowa równa 20 dziesiętnie

0xFF

dodatnia całkowita wartość szesnastkowa równa 255 dziesiętnie

-0x0f

ujemna całkowita wartość szesnastkowa równa –15 dziesiętnie

1.1

dodatnia wartość rzeczywista 1.1

-1.1

ujemna wartość rzeczywista 1.1

0.1E2

dodatnia wartość rzeczywista równa 10

1.0E-2

dodatnia wartość rzeczywista równa 0.01

Typ łańcuchowy

Typ łańcuchowy pozwala na reprezentację ciągów znaków. Ciągi te (inaczej stałe napisowe) powinny być ujęte w znaki cudzysłowu, aczkolwiek dopuszczalne jest również użycie znaków apostrofu. Przykładowy literał napisowy:

"abcdefg"

Ciąg może zawierać przedstawione w tabeli 2.1 sekwencje specjalne.

Tabela 2.1. Sekwencje znaków specjalnych

Sekwencja

Znaczenie

\b

backspace (ang. backspace)

\n

nowy wiersz (ang. new line)

\r

powrót karetki (ang. carriage return)

\f

nowa strona (ang. form feed)

\t

tabulacja pozioma (ang. horizontal tab)

\"

cudzysłów (ang. double quote)

\'

apostrof (ang. single quote)

\\

lewy ukośnik (ang. backslash)

Typ logiczny

Typ logiczny (boolean) pozwala na określenie dwóch wartości logicznych: prawda i fałsz. Wartość prawda jest w języku JavaScript reprezentowana przez słowo true, natomiast wartość fałsz — przez słowo false.

Typ obiektowy

Typ obiektowy służy do reprezentacji obiektów. Nie ma specjalnego słowa kluczowego oznaczającego ten typ. Najczęściej wykorzystuje się obiekty wbudowane oraz udostępniane przez przeglądarkę. Pełna obsługa programowania obiektowego (zorientowanego obiektowo) ma występować dopiero w wersji JavaScript 2.0 (ECMAScript v5 i v6).

Typy specjalne

Wyróżniamy dwa rodzaje typów specjalnych: null i undefined. Typ null określa wartość pustą (czy też brak wartości) i najczęściej używany jest podczas korzystania z obiektów i programowania obiektowego. W tym kontekście jeśli jakiś byt programistyczny (zmienna, obiekt, właściwość itd.) ma wartość null, oznacza to, że jest pusty. Typ undefined określa wartość niezdefiniowaną. W tym kontekście wartość undefined ma niezainicjowana zmienna, zmienna, której jawnie przypisano wartość undefined, bądź też nieistniejąca właściwość obiektu.

 

JavaScript. Nieoficjalny podręcznik

JavaScript.
Nieoficjalny podręcznik

JavaScript. Pierwsze starcie

JavaScript.
Pierwsze starcie

JavaScript. Praktyczny kurs

JavaScript.
Praktyczny kurs

Nowości Helionu

Statystyki

Użytkowników : 766
Artykułów : 513
Zakładki : 28
Odsłon : 15600672