JavaScriptová kalkulačka na stránce
S matematikou se člověk setkává opravdu na každém kroku. Nějaké to sčítání a odčítání (v horším případě násobení) s malými čísly spočítá většina z nás v hlavě, ale na složitější výpočty už potřebujeme kalkulačku. Proč ji tedy neumístit do své internetové stránky? Tento nepříliš složitý příklad by vám mohl dát inspiraci.
Zde se podívejte jak by takový kalkulátor mohl vypadat.
Jedná se o formulář s jedním vstupním prvkem input a několika tlačítky (button) srovnanými v tabulce. Pořadí a umístění je samozřejmě zcela na vašem úsudku.
|
Prvky mají zadefinovány kaskádové styly. Třída male je pro tlačítka s čísly a znaménka, třída velke pro nulu "C" a "=" a třída zavorky pochopitelně pro závorky:
|
Jak vidíte všechna tlačítka mají definovanou obsluhu události onClick.
Tato událost většinou volá funkci enter() s parametry název formuláře a proměnná (viz. dále). U tlačítka „=“ to je funkce compute() s parametrem název formuláře. „M+“ má soukromou funkci – mem() také s parametrem název formuláře. Tlačítko CLEAR pro smazání paměti ruší obsah proměnné pamet. Ještě tlačítko C se liší od ostatních. Je typu reset, z čehož vyplývá, že maže celý obsah formuláře.
Skript pro obsluhy tlačítek a deklarace proměnných je následující.
|
V proměnných jsou uloženy znaky tlačítek kalkulačky. Tyto proměnné dostává jako parametr funkce enter(), která je pomocí vlastnosti value objektu expr (prvek input ve formuláři) vkládá na "display" kalkulátoru. (Operátor += odpovídá syntaxi a = a + b).
Funkce compute() je ošetřena podmínkou, která testuje zda v prvku input jsou nějaké znaky. Pokud shledá, že ano, vepíše do input hodnotu výsledku pomocí funkce eval(). Ta vyhodnotí řetězec předaný v parametru a vrátí jeho hodnotu.
Poslední částí je funkce mem(). Opět je ošetřena podmínkou neprázdného prvku input. Poté přiřazuje hodnotu na "displayi" do proměnné pamet. Hodnotu umístí do závorek pro případ, že by obsahovala např. 19+5, která by při následném násobení dělala neplechu (* má vyšší prioritu než + a -). Tuto proměnnou znovu vyvolává tlačítko „MR“ – používá k tomu funkci enter().
Nashledanou příště.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Optimalizace a zlepšení výkonu kódu: tipy a triky
14. srpna 2023 -
Nové AI modely od Open AI a Google
22. května 2024 -
Netcat a Ncat
8. prosince 2022
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024
Prdelka
Čvn 10, 2014 v 11:02Nefunguje to -_-