Wartości
Wartości
JavaScript rozróżnia następujące typy:
- Liczby (Number), takie jak 42 lub 3.14159
- Logiczne (Boolean) wartość,
true
albofalse
- Łańcuchy znakowe (String), takie jak "Siema!"
-
null
, specjalne słowo oznaczające wartość null (pustą);null
jest także wartością prymitywną; ponieważ JavaScript rozróżnia małe/duże litery, null to nie to samo co Null, NULL czy jakkolwiek inaczej. -
undefined
podstawowa właściwość, której wartość jest nieokreślona;undefined
także jest wartością prymitywną.
Ten względnie niewielki zestaw typów wartości - lub typów danych - pozwala wyposażyć Twoją aplikację w wiele użytecznych funkcji. Nie występuje wyraźna różnica pomiędzy liczbami całkowitymi a wartościami rzeczywistymi, tak jak i w JavaScript nie ma w ogóle jawnego rozróżnienia typów danych. Możesz jednak, przykładowo, użyć obiektu Date
oraz jego metod do obsługi dat.
Obiekty i funkcje to inne podstawowe elementy języka. Obiekty można sobie wyobrazić jako nazwane pojemniki na wartości, a funkcje jako procedury, które są wykonywane przez Twoją aplikację.
Konwersja typu danych
JavaScript jest językiem programowania o dynamicznych typach. Oznacza to, że przy deklaracji zmiennej nie musisz określać jej typu. Typy danych w razie potrzeby są automatycznie konwertowane w trakcie wykonywania skryptu. Możemy, przykładowo, zadeklarować zmienną następująco:
var odpowiedz = 42
a później przypisać tej samej zmiennej wartość tekstową, na przykład:
odpowiedz = "Dziękuję za wszystkie ryby..."
Ponieważ JavaScript posiada dynamiczne typy, przypisanie to nie powoduje komunikatu błędu.
W wyrażeniach z operatorem + zawierających wartość tekstową oraz numeryczną, JavaScript konwertuje wartości numeryczne na tekst. Przyjrzyjmy się następującym instrukcjom.
x = "Odpowiedzią jest " + 42 // zwraca "Odpowiedzią jest 42" y = 42 + " jest odpowiedzią" // zwraca "42 jest odpowiedzią"
W wyrażeniach z innymi operatorami, JavaScript nie konwertuje wartości numerycznej do postaci tekstowej. Na przykład:
"37" - 7 // zwraca 30 "37" + 7 // zwraca 377