Text a čísla

Každá hodnota v JavaScriptu má svůj typ. Zatím jste používali dva typy:

  • čísla, například 25 nebo 1.5, se kterými můžete počítat;
  • text, například "Ahoj". Programátoři mu říkají textový řetězec (anglicky string), protože je to řetězec znaků.

Proto text potřebuje uvozovky a čísla ne: 25 je číslo, ale "25" je text složený ze znaků 2 a 5. Na typu závisí, co operátor udělá. Například + dvě čísla sečte, ale dva textové řetězce spojí:

console.log(5 + 3);
console.log("5" + "3");
console.log("5" + 3);

Vypíše:

8
53
53

Poslední řádek mnohé překvapí. Když je na jedné straně + textový řetězec, JavaScript převede na řetězec i druhou stranu a obě spojí. Proto můžete spojovat text s čísly: "Je mi " + 25 + " let." dá "Je mi 25 let."

Ve výstupu typ nepoznáte: console.log(5) i console.log("5") vypíšou 5. Typ hodnoty zjistíte pomocí typeof:

console.log(typeof 5);
console.log(typeof "5");

Vypíše:

number
string

number znamená číslo, string textový řetězec. typeof funguje i s proměnnými: typeof cena dá typ hodnoty uložené v proměnné cena.

Typická chyba je číslo v uvozovkách. Pak + místo sčítání spojuje a výsledek vypadá divně:

const jablka = "5";
console.log(jablka + 1);

Vypíše 51 místo 6. Když vás nějaký výsledek takhle překvapí, zkontrolujte typy pomocí typeof.

Pokyny

Program má vypsat Příští rok vám bude 26, ale na konci vypisuje 251. Zjistěte proč: na novém řádku vypište typ proměnné vek pomocí typeof.

Vypíše se string: v proměnné vek je text, protože její hodnota je v uvozovkách. Opravte to: odstraňte uvozovky kolem 25, aby proměnná vek obsahovala číslo. Pak program vypíše Příští rok vám bude 26 a typeof vypíše number.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

9/12