Slabikář JavaScriptu – proměnné a datové typy

    0

    Tento díl výuky JavaScriptu bude pojednávat o základních stavebních kamenech každého programu – tím jsou proměnné a jejich datové typy. Uvedeny budou také některá základní pravidla pro práci s proměnnými a s ne zcela běžnými hodnotami.

    Vzhledem k tomu, že vyčerpávající pojednání o datových typech, proměnných, operátorech a všech příbuzných pojmech by bylo velice dlouhé a nudné, pokusím se zaměřit na podstatné charakteristiky jazyka. Následující výklad si tedy neklade za cíl popsat všechny podrobnosti, ale mohu zodpovědně prohlásit, že postačí k řešení asi 98 % úkolů, které s použitím proměnných a základních datových typů souvisejí.

    Stejně jako v jiných programovacích jazycích i v JavaScriptu slouží proměnné k uchovávání hodnot ve skriptech k jejich dalšímu zpracování. Patří k dobrým zvykům proměnnou před prvním použitím deklarovat. K tomu slouží klíčové slovo var. Následuje několik příkladů deklarace proměnných, jimž je zároveň (s výjimkou posledního případu) přiřazena inicializační hodnota:

    var cislo = 5;
    var pravda = true;
    var retezec = „Textový řetězec“;
    var dalsi_cislo = 3.14;
    var promenna;

    JavaScript nevyžaduje deklaraci klíčovým slovem var, ale pro přehlednost kódu se tato explicitní deklarace doporučuje. Jedinou výjimkou je případ deklarace lokální proměnné ve funkci – tam je explicitní deklarace povinná. Lokální proměnné je možné používat pouze ve funkci (funkcemi se budeme zabývat v jednom z pozdějších dílů). Mimo „svou“ funkci je lokální proměnná nedostupná. Příklad tzv. implicitní deklarace přiřazením hodnoty:

    alfa = „text“;

    Jaké znaky může obsahovat název proměnné? Z obsáhlé názvové konvence většinou postačí pamatovat si základní pravidla:

    • veškeré identifikátory (nejen názvy proměnných) jsou v JavaScriptu case sensitive – to znamená, že se rozlišují malá a velká písmena
    • názvy proměnných mohou obsahovat písmena, číslice, znak podtržítko (_) nebo dolar ($)
    • název proměnné nesmí začínat číslicí

    Více se dozvíte v článcích JavaScript – názvy proměnných a JavaScript – úvod do proměnných.

    V příkladech deklarací proměnných jste si jistě všimli toho, že hodnoty přiřazované do proměnných jsou různých typů (čísla, texty apod.). Nastává správná chvíle popsat datové typy, které je možné v JavaScriptu používat. Základními datovými typy v JavaScriptu jsou číslo (Number), textový řetězec (String), Boolean a Object. Objektovými datovými typy se však budeme zabývat později.

    Number

    Tento datový typ obsahuje kladná, záporná, celá čísla i čísla s desetinnou tečkou. Aby toho nebylo dost, je možné čísla zadávat v jejich dekadické, osmičkové nebo hexadecimální reprezentaci. Jak lze tedy proměnné cislo přiřadit hodnotu 16? Zde je několik příkladů:

    var cislo = 16;         // dekadická reprezentace
    var cislo = 4 * 4;
    var cislo = 0x10;      // hexadecimální reprezentace
    var cislo = 020;       // osmičková reprezentace

    Zvláště poslednímu řádku uvedeného příkladu věnujte pozornost. Pokud datový typ Number začíná číslicí 0 (nenásledovanou písmenem x), jedná se o osmičkovou reprezentaci čísla. To může být častým zdrojem chyb. Sám s tím mám neblahé zkušenosti.

    Příklad jaksi mimochodem demonstruje i možnost vkládání komentářů do kódu JavaScriptu. Pokud kód obsahuje dvě lomítka, vše od nich až do konce řádku se bere jako komentář a při provádění kódu se ignoruje. Při ladění skriptů lze tedy „zakomentování“ některých programových řádků výhodně využít.

    Kromě skutečných čísel je možné do proměnných datového typu Number přiřazovat i speciální hodnoty:

    • NaN – vyjadřuje zkratku Not a Number (není číslo).
    • Infinity – nekonečno, které vzniká po dělení nulou. Dělení nulou je tedy v JavaScriptu přípustné. Nekonečno může být kladné nebo záporné (+Infinity nebo -Infinity).

    Abyste si vyzkoušeli práci s těmito hodnotami, spusťte následující příklad. Pro jistotu zdůrazňuji, že příklad pracuje výhradně s datovým typem Number:

    <script language=“JavaScript“>
      alert(6/“a“);       // výsledek je NaN
      alert(20/0);       // výsledek je Infinity
      alert(-20/0);       // výsledek je -Infinity
      alert(20/Infinity);       // výsledek je 0
      alert(Infinity/Infinity);       // výsledek je NaN
      alert(NaN/5);       // výsledek je NaN
      alert(020);       // výsledek je 16
    </script>

    String

    Textový řetězec může obsahovat libovolné znaky – ty se uzavírají buď do uvozovek („) nebo apostrofů (‚). Pokud chcete, aby řetězec obsahoval apostrofy, uzavřete řetězec do uvozovek a naopak. Vyzkoušejte následující příklad:

    <script language=“JavaScript“>
      alert(„‚Text'“);
      alert(‚“Text“‚);
    </script>

    Boolean

    Jedná se o datový typ, který může nabývat pouze jedné ze dvou hodnot: true nebo false. Datový typ se – stejně jako v jiných programovacích jazycích – používá především v podmínkových výrazech. Těmi se budeme zabývat v jednom z příštích dílů.

    Starší komentáře ke článku

    Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.

    Žádný příspěvek v diskuzi

    Odpovědět