Výukový program JS

JS HOME Úvod do JS JS Kam vést Výstup JS JS prohlášení Syntaxe JS Komentáře JS JS proměnné JS Let JS Const Operátoři JS JS aritmetika Zadání JS JS datové typy Funkce JS JS objekty Události JS JS struny JS String Methods JS String Search Šablony řetězců JS JS čísla Metody čísel JS JS Arrays Metody JS Array JS Array Sort Iterace pole JS JS Array Const JS Termíny Formáty data JS JS metody získávání data JS metody nastavení data JS Math JS Náhodný JS Booleans JS Srovnání Podmínky JS Přepínač JS JS Loop For JS Loop For In JS Loop For Of Zatímco JS Loop JS Break JS Iterables Sady JS Mapy JS Typ JS Konverze typu JS JS Bitwise JS RegExp Chyby JS Rozsah JS JS Zvedací zařízení Přísný režim JS JS toto klíčové slovo Funkce šipky JS JS třídy JS JSON Ladění JS Průvodce stylem JS JS Best Practices Chyby JS Výkon JS JS Reserved Words

Verze JS

Verze JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge Historie JS

JS objekty

Definice objektů Vlastnosti objektu Objektové metody Zobrazení objektu Objektové přístupové objekty Konstruktory objektů Prototypy objektů Iterovatelné objekty Sady objektů Mapy objektů Reference objektu

Funkce JS

Definice funkcí Funkční parametry Vyvolání funkce Volání funkce Funkce Použít Funkční uzávěry

JS třídy

Úvod do třídy Třídní dědičnost Třída Statická

JS Async

JS zpětná volání JS asynchronní JS Sliby JS Async/Await

JS HTML DOM

Úvod do DOM Metody DOM Dokument DOM Prvky DOM DOM HTML Formuláře DOM DOM CSS DOM animace Události DOM DOM Event Listener Navigace DOM DOM uzly Kolekce DOM Seznamy uzlů DOM

Kusovník prohlížeče JS

Okno JS Obrazovka JS Umístění JS Historie JS JS Navigator Popup Alert JS Časování JS Soubory cookie JS

Webová rozhraní API JS

Úvod do webového rozhraní API Web Forms API Webová historie API Web Storage API Web Worker API Web Fetch API Web Geolocation API

JS AJAX

Úvod do AJAXu AJAX XMLHttp Požadavek AJAX Odpověď AJAX Soubor XML AJAX AJAX PHP AJAX ASP Databáze AJAX Aplikace AJAX Příklady AJAX

JS JSON

Úvod do JSON Syntaxe JSON JSON vs XML Datové typy JSON Analýza JSON JSON Stringify Objekty JSON Pole JSON Server JSON JSON PHP JSON HTML JSON JSONP

JS vs jQuery

Selektory jQuery HTML jQuery jQuery CSS jQuery DOM

Grafika JS

Grafika JS JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

Příklady JS

Příklady JS JS HTML DOM Vstup HTML JS JS HTML objekty JS HTML události Prohlížeč JS Editor JS Cvičení JS JS kvíz Certifikát JS

JS Reference

Objekty JavaScriptu HTML DOM objekty


Datové typy JavaScriptu

Proměnné JavaScriptu mohou obsahovat různé typy dat: čísla, řetězce, objekty a další:

let length = 16;                               // Number
let lastName = "Johnson";                      // String
let x = {firstName:"John", lastName:"Doe"};    // Object

Koncepce datových typů

V programování jsou datové typy důležitým pojmem.

Aby bylo možné s proměnnými pracovat, je důležité o typu něco vědět.

Bez datových typů nemůže počítač toto bezpečně vyřešit:

let x = 16 + "Volvo";

Má vůbec smysl přidávat k šestnáctce „Volvo“? Dojde k chybě nebo k výsledku?

JavaScript bude výše uvedený příklad považovat za:

let x = "16" + "Volvo";

Při přidávání čísla a řetězce bude JavaScript považovat číslo za řetězec.

Příklad

let x = 16 + "Volvo";

Příklad

let x = "Volvo" + 16;

JavaScript vyhodnocuje výrazy zleva doprava. Různé sekvence mohou přinést různé výsledky:

JavaScript:

let x = 16 + 4 + "Volvo";

Výsledek:

20Volvo

JavaScript:

let x = "Volvo" + 16 + 4;

Výsledek:

Volvo164

V prvním příkladu JavaScript považuje 16 a 4 za čísla, dokud nedosáhne „Volvo“.

Ve druhém příkladu, protože první operand je řetězec, jsou všechny operandy považovány za řetězce.



Typy JavaScriptu jsou dynamické

JavaScript má dynamické typy. To znamená, že stejnou proměnnou lze použít k uložení různých datových typů:

Příklad

let x;           // Now x is undefined
x = 5;           // Now x is a Number
x = "John";      // Now x is a String

JavaScriptové řetězce

Řetězec (nebo textový řetězec) je řada znaků jako "John Doe".

Řetězce jsou psány s uvozovkami. Můžete použít jednoduché nebo dvojité uvozovky:

Příklad

let carName1 = "Volvo XC60";   // Using double quotes
let carName2 = 'Volvo XC60';   // Using single quotes

Uvozovky můžete použít uvnitř řetězce, pokud se neshodují s uvozovkami obklopujícími řetězec:

Příklad

let answer1 = "It's alright";             // Single quote inside double quotes
let answer2 = "He is called 'Johnny'";    // Single quotes inside double quotes
let answer3 = 'He is called "Johnny"';    // Double quotes inside single quotes

Více o řetězcích se dozvíte později v tomto tutoriálu.


JavaScriptová čísla

JavaScript má pouze jeden typ čísel.

Čísla lze psát s desetinnými místy nebo bez nich:

Příklad

let x1 = 34.00;     // Written with decimals
let x2 = 34;        // Written without decimals

Extra velká nebo extra malá čísla lze zapsat vědeckým (exponenciálním) zápisem:

Příklad

let y = 123e5;      // 12300000
let z = 123e-5;     // 0.00123

Více o číslech se dozvíte později v tomto tutoriálu.


JavaScript Booleans

Booleovské hodnoty mohou mít pouze dvě hodnoty: truenebo false.

Příklad

let x = 5;
let y = 5;
let z = 6;
(x == y)       // Returns true
(x == z)       // Returns false

Booleovské hodnoty se často používají při podmíněném testování.

Více o podmíněném testování se dozvíte později v tomto tutoriálu.


Pole JavaScriptu

Pole JavaScriptu se zapisují s hranatými závorkami.

Položky pole jsou odděleny čárkami.

Následující kód deklaruje (vytváří) pole s názvem cars, obsahující tři položky (názvy aut):

Příklad

const cars = ["Saab", "Volvo", "BMW"];

Indexy pole jsou založeny na nule, což znamená, že první položka je [0], druhá je [1] a tak dále.

Více o polích se dozvíte později v tomto tutoriálu.


Objekty JavaScriptu

Objekty JavaScriptu se píší se složenými závorkami {}.

Vlastnosti objektu se zapisují jako dvojice název:hodnota, oddělené čárkami.

Příklad

const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

Objekt (osoba) ve výše uvedeném příkladu má 4 vlastnosti: firstName, lastName, age a eyeColor.

Více o objektech se dozvíte později v tomto tutoriálu.


Typ Operátora

typeofK vyhledání typu proměnné JavaScriptu můžete použít operátor JavaScript.

Operátor typeofvrací typ proměnné nebo výrazu:

Příklad

typeof ""             // Returns "string"
typeof "John"         // Returns "string"
typeof "John Doe"     // Returns "string"

Příklad

typeof 0              // Returns "number"
typeof 314            // Returns "number"
typeof 3.14           // Returns "number"
typeof (3)            // Returns "number"
typeof (3 + 4)        // Returns "number"

Více o typeof se dozvíte později v tomto tutoriálu.


Nedefinováno

V JavaScriptu má proměnná bez hodnoty hodnotu undefined. Typ je také undefined.

Příklad

let car;    // Value is undefined, type is undefined

Libovolnou proměnnou lze vyprázdnit nastavením hodnoty na undefined. Typ bude také undefined.

Příklad

car = undefined;    // Value is undefined, type is undefined

Prázdné hodnoty

Prázdná hodnota nemá nic společného s undefined.

Prázdný řetězec má právní hodnotu i typ.

Příklad

let car = "";    // The value is "", the typeof is "string"

Otestujte se pomocí cvičení

Cvičení:

Pomocí komentářů popište správný datový typ následujících proměnných:

let length = 16;            // 
let lastName = "Johnson";   // 
const x = {
  firstName: "John",
  lastName: "Doe"
};                          //