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


typ JavaScriptu


V JavaScriptu existuje 5 různých datových typů, které mohou obsahovat hodnoty:

  • string
  • number
  • boolean
  • object
  • function

Existuje 6 typů objektů:

  • Object
  • Date
  • Array
  • String
  • Number
  • Boolean

A 2 datové typy, které nemohou obsahovat hodnoty:

  • null
  • undefined

Typ Operátora

Operátor můžete použít typeofk nalezení datového typu proměnné JavaScriptu.

Příklad

typeof "John"                 // Returns "string"
typeof 3.14                   // Returns "number"
typeof NaN                    // Returns "number"
typeof false                  // Returns "boolean"
typeof [1,2,3,4]              // Returns "object"
typeof {name:'John', age:34}  // Returns "object"
typeof new Date()             // Returns "object"
typeof function () {}         // Returns "function"
typeof myCar                  // Returns "undefined" *
typeof null                   // Returns "object"

Dodržujte prosím:

  • Datový typ NaN je číslo
  • Datový typ pole je objekt
  • Datový typ data je objekt
  • Datový typ null je objekt
  • Datový typ nedefinované proměnné není definován *
  • Datový typ proměnné, které nebyla přiřazena hodnota, také není definován *

Nemůžete použít typeofk určení, zda je objekt JavaScriptu pole (nebo datum).



Primitivní data

Primitivní datová hodnota je jednoduchá datová hodnota bez dalších vlastností a metod.

Operátor typeofmůže vrátit jeden z těchto primitivních typů:

  • string
  • number
  • boolean
  • undefined

Příklad

typeof "John"              // Returns "string"
typeof 3.14                // Returns "number"
typeof true                // Returns "boolean"
typeof false               // Returns "boolean"
typeof x                   // Returns "undefined" (if x has no value)

Komplexní data

Operátor typeofmůže vrátit jeden ze dvou komplexních typů:

  • function
  • object

Operátor typeofvrací "objekt" pro objekty, pole a null.

Operátor typeofnevrací "objekt" pro funkce.

Příklad

typeof {name:'John', age:34} // Returns "object"
typeof [1,2,3,4]             // Returns "object" (not "array", see note below)
typeof null                  // Returns "object"
typeof function myFunc(){}   // Returns "function"

Operátor typeofvrací " object" pro pole, protože v JavaScriptu jsou pole objekty.


Datový typ typu

Operátor typeofnení proměnná. Je to operátor. Operátory ( + - * / ) nemají žádný datový typ.

typeofOperátor však vždy vrací řetězec (obsahující typ operandu).


Vlastnost konstruktoru

Vlastnost constructorvrací funkci konstruktoru pro všechny proměnné JavaScriptu.

Příklad

"John".constructor                // Returns function String()  {[native code]}
(3.14).constructor                // Returns function Number()  {[native code]}
false.constructor                 // Returns function Boolean() {[native code]}
[1,2,3,4].constructor             // Returns function Array()   {[native code]}
{name:'John',age:34}.constructor  // Returns function Object()  {[native code]}
new Date().constructor            // Returns function Date()    {[native code]}
function () {}.constructor        // Returns function Function(){[native code]}

Můžete zkontrolovat vlastnost konstruktoru a zjistit, zda je objekt Array (obsahuje slovo "Array"):

Příklad

function isArray(myArray) {
  return myArray.constructor.toString().indexOf("Array") > -1;
}

Nebo ještě jednodušeji můžete zkontrolovat, zda je objekt funkcí Array :

Příklad

function isArray(myArray) {
  return myArray.constructor === Array;
}

Můžete zkontrolovat vlastnost konstruktoru a zjistit, zda je objekt Date(obsahuje slovo "Datum"):

Příklad

function isDate(myDate) {
  return myDate.constructor.toString().indexOf("Date") > -1;
}

Nebo ještě jednodušeji můžete zkontrolovat, zda je objekt funkcí Date :

Příklad

function isDate(myDate) {
  return myDate.constructor === Date;
}


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"

Nula

V JavaScriptu nullje „nic“. Má to být něco, co neexistuje.

Bohužel v JavaScriptu je datovým typem nullobjekt objekt.

Můžete to považovat za chybu v JavaScriptu, která typeof nullje objektem. Mělo by být null.

Objekt můžete vyprázdnit nastavením na null:

Příklad

let person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
person = null;    // Now value is null, but type is still an object

Objekt můžete také vyprázdnit nastavením na undefined:

Příklad

let person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
person = undefined;   // Now both value and type is undefined

Rozdíl mezi Undefined a Null

undefineda nulljsou stejné v hodnotě, ale liší se v typu:

typeof undefined           // undefined
typeof null                // object

null === undefined         // false
null == undefined          // true