JavaScript umožňuje definovať premenným hodnoty viacerými spôsobmi. Tie, ktoré nie sú vytvorené cez natívne objekty skriptovacieho jazyka nazývané wrappery sú literálmi. Literály môžu byť číselné alebo reťazcové, ktoré je možné deliť na ďalšie podskupiny (napr.: hodnoty typu boolean, polia, objekty a ďalšie).Číselný literálČíselný literál zastupuje celé alebo reálne číslo.Príklad: Číselné literály.
1
2
var number = 10;// číslo 10 je literál
var realNumber = 10.10;// číslo 10.10 je literál
Reťazcový literál - hodnota typu BooleanHodnoty premenných v JavaScripte môžu reprezentovať pravdivostné hodnoty rôznymi spôsobmi. Najvýstižnejšou reprezentáciou sú kľúčové slová true a false. Príklad: Literál typu Boolean.
1
2
var trueValue = true;// true je literál
var falseValue = false;// false je literál
Reťazcový literál - hodnota typu StringLiterál typu reťazec preprezentuje text v úvodzovkách, prípadne v apostrofoch.Príklad: Literál typu String.
1
var stringValue ="Reťazec ako literál";// text v úvodzovkách je literál
Reťazcový literál - hodnota typu ArrayAj objekty je možné zapisovať ako literály. Napríklad pole sa zapisuje ako hodnota začínajúca znakom [ a končiaca znakom ]. Medzi znakmi [ a ] sú uvedené jednotlivé hodnoty poľa.Príklad: Literál typu Array.
1
2
// zápis poľa so piatimi hodnotami.
var ArrayValue =[1, 2, 3, 4, 5];// [1, 2, 3, 4, 5] je literál
Reťazcový literál - hodnota typu ObjektRovnako ako polia aj objekty JavaScriptu je možné zapisovať ako literály. Objekt ako literál sa zapisuje v podobe hodnoty začínajúcej znakom { a končiacej znakom }. Medzi znakmi { a } sú uvedené páry hodnôt typu key : value, respektíve variable : value, kde variable je názov vlastnosti alebo metódy a value primitívna hodnota alebo identifikátor.Príklad: Literál typu Object.
1
2
3
4
5
6
7
// vytvorenie objektu ObjectValue cez literál
var ObjectValue ={
property : 1;
method : function(){
console.log("Ja som metóda objektu.");
}
};
Reťazcový literál - hodnota typu FunctionPosledným typom literálu je funkcia. Aj funkciu je možné v JavaScripte definovať viacerými spôsobmi. Vo svojej podstate ide o zápis klasickej funkcie, len je priradená premennej. Funkcia môže byť pomenovaná alebo nepomenovaná (anonymná).Príklad: Literál typu Function.
1
2
3
4
5
6
7
8
9
10
var functionValue1 =function(){
console.log("Ja som funkcia 1.");
}
var functionValue2 =function literalFunction(){
console.log("Ja som funkcia 2.");
}
functionValue1();
functionValue2();
Premenné vytvorené cez natívne objekty JavaScriptu (wrappery) získavajú vlastnosti a metódy, ktoré premenné s literálom neobsahujú. Výnimkou sú literály typu Object, Array a Function.
Záver
V rámci good practices v JavaScripte sa preferujú literály namiesto priraďovania hodnôt vytváraných cez natívne objekty JavaScriptu (wrappery). Technikám tvorby kvalitného programového kódu v skriptovacom jazyku JavaScript sa plánujem venovať v špecializovaných článkoch.9.12.2012 (aktualizované 14.11.2013), Matej LednárKategória: JavaScriptJavaScript,programovanie,JavaScriptŽiadna časť tohto článku nesmie byť reprodukovaná bez uvedenia autora a URL na túto stránku.Viac informácií nájdete v sekcii O projekte.
Komentáre
Jozef Formalny 16.12.201222:18Pre upresnenie, literaly su terminalne symboly ktore (na rozdiel od neterterminalov) nemozno zamenit prostrednictvom pravidiel gramatiky pre dany jazyk za dalsie symboly. Wrappery neobaluju literaly, ale primitivne datove typy ako su napriklad integer, alebo znakovy retazec, a davaju primitivnym typom "obal" objektu, cim umoznuju niektore manipulacie, ktore nie su s povodnym primitivnym typom mozne.Autor17.12.201221:02Ešte k článku dopĺňam a následne ho aktualizujem: Premenné vytvorené cez natívne objekty JavaScriptu (wrappery) získavajú vlastnosti a metódy, ktoré premenné s literálom neobsahujú. Výnimkou sú literály typu Object, Array a Function.