Modest Programmer logo
26 sierpnia 2018
Tagi: JavaScript
W dzisiejszym artykule kilka słów o dynamicznym typowaniu w języku JavaScript. Jest to coś co odróżnia język JavaScript od dużej ilości innych popularnych języków programowania. Istnieją dwa typy języków programowania, są to statyczne typowane oraz dynamicznie typowane. Statyczne typowanie występuję m.in. w językach takich jak: Java, C, C++, C#, a typowanie dynamiczne m.in. właśnie w JavaScripcie, PHP, Ruby. W statycznych językach jeśli zadeklarujemy zmienną jakimś typem, to nie może ten typ już zostać zmieniony. Typ musi zostać nadany w czasie kompilacji programu. W przeciwieństwie do statycznych języków, deklaracje zmiennych w językach dynamicznych mogą zostać zmienione w trakcie działania programu i nie są sprawdzanie przed uruchomieniem programu. Typy w przypadku dynamicznego typowania, są przypisywane do wartości przechowywanych w zmiennych w trakcie działania programu. Najlepiej zademonstruję Ci to na przykładzie. Typowanie dynamiczne w języku JavaScript:
let age = '30';
typeof age; //"string"
age = 30;
typeof age; //'number'
age = true;
typeof age; //boolean
Do sprawdzenia typu zmiennej możesz użyć znanej Ci już z poprzednich artykułów instrukcji typeof. Jak możesz zauważyć na powyższym przykładzie, najpierw zadeklarowana zmienna jest typem string, po czym w kolejnej linii zmienna zostaje nadpisana wartością 30 (numeryczną) i od tego momentu zmienna jest typem number, w dalszej części programu ponownie następuje przypisanie do innego typu boolean. Taki kod jest jak najbardziej prawidłowy w języku JavaScript.

Podobny kod nie będzie dopuszczalny w statycznym języku programowania jakim jest np. C#. Przykład w języku C#:
string age = "30";
age = 30; //błąd kompilacji
age = true; //błąd kompilacji
To wszystko co chciałem Ci przekazać w tym artykule. Zapraszam do kolejnego artykułu z serii podstawy programowania w języku JavaScript.

Kolejny artykuł - Obiekty w JavaScript.
Autor artykułu:
Kazimierz Szpin
Kazimierz Szpin
Programista. Specjalizuje się w C#, głównie WPF, Windows Forms oraz ASP.NET MVC.
Autor bloga ModestProgrammer.pl
Dodaj komentarz
© Copyright 2018 modestprogrammer.pl. Wszelkie prawa zastrzeżone Design by Kazimierz Szpin