Nejste přihlášen/a.
Dobrý den,
začínám v javascriptu, jako samouk. Dnes jsem si všiml jedné banální věci.
když píšeme v javascriptu proměnnou, která má nějakou hodotu, vždy užíváme tento postup : nejdříve proměnnou deklarujeme a poté inicializujeme.
např:
<script>
var a; \\ deklarace proměnné
a= 5; \\ inicializace proměnné
document.write(a); \\ metoda write() vypíše obsah proměnné
</script>
Nicméně jsem zjistil že stejný příklad funguje i bez deklarace proměnné, tedy bez var a;
<script>
a = 5;
document.write(a) \\ předpokladal jsem že když ve scriptu chybí var a, že metoda write(a) nevypíše hodnotu.
</script>
Můj dotaz tedy zní, proč tedy proměnnou musíme deklarovat, tj. psát var a, když můžeme rovnou psát inicializaci a=5. dojdeme stejného výsledku. Jsem absolutní začátečník, tudíž se asi jedná o banalitu, ale je důležité nedělat chyby v banalitách, proto se tedy táži.
Děkuji za vysvětlení a Váš čas
Nemusíš, Javascript je dynamický skriptovací jazyk a většina těchto jazyků to tak má (jestli to je dobře nebo ne je na debatu, za mě je to hnus), jde o tzv. implicitní deklaraci (js interpreter zjistí že proměnná neexistuje a tak ji deklaruje sám). Ve většině případů si ale moc času tím že nenapíšeš 3 písmena neušetříš takže doporučuju vždy specifikovat proměnou explicitně pomocívar nebo let, můžeš tím předejít chybám. Podle toho jaké klíčové slovo zvolíš bude proměnná vidět v různých částech scriptu a většinou platí že chceš aby byla vidět jen když ji potřebuješ což právě implicitní deklarací moc kontrolovat nemůžeš.
Rozdílvar a let je dobře vysvětlen třeba tady záleží jak dobře umíš anglicky ale vzhledem k tomu co se učíš tak angličitna bude stejně nezbytná.
Navíc nemusíš mít dva řádky na deklaraci a inicializaci, jde to zapsat v jednom.
Předpokládám, že u složitějších programů chceš vědět jaké proměnné používáš a k čemu jsou.
Očekává se, že do proměnné datum budeš ukládat číselnou hodnotu a do do proměnné strDatum str_datum nebo sDatum, sDat apod. budeš ukládat string čili řetězec datum. Slouží ti to k tomu, aby ses v tom vyznal, protože časem zapomeneš co sktipt dělal nebo s jakými proměnnými se tam pracuje. Je dobré mít po ruce skript, který obsahuje i komentáře k tomu hned na začátku. Teď nevím jak v javascriptu ale v jiných jazycích je zvyklem takto předem deklarovat funkce a procedury. A abys věděl co tam děláš přidáš tam i komentář.
Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz.
Používáním poradny vyjadřujete souhlas s personifikovanou reklamou, která pomáhá financovat tento server, děkujeme.