TOC

This article has been localized into Czech by the community.

Operátory:

Operátor zbytku

Operátor zbytku se používá k dělení dvou čísel, ale místo vrácení výsledku jako desetinného čísla (např. 5 / 2 = 2,5) provede výpočet pouze s celými čísly (celočíselně) a vrátí zbývající část (pokud nějaká je). Tedy například, pokud byste dělili 5 pomocí operátoru zbytku 2 (5 % 2), výsledek by byl 1, protože 5 děleno 2 je 2 s 1 jako zbytek.

To může znít komplikovaně, ale pojďme se podívat na pár příkladů, které ilustrují, jak to funguje. Operátor zbytku v JavaScriptu je znak procenta, takže místo použití operátoru dělení (/) použijete operátor zbytku (%), takto:

let n1 = 12, n2 = 5;
alert(n1 % n2);

Výsledek této operace bude 2. Proč? Protože když se pokusíme provést dělení celých čísel 12 a 5, nejbližší číslo, které lze rovným dílem dělit 5, je 10. Zbývající část od 12 do 10 je 2, která bude vrácena, když použijeme operátor zbytku.

Pokud to provedeme s 14 a 5, výsledek bude 4:

let n1 = 14, n2 = 5;
alert(n1 % n2);

Ale pokud to provedeme s 15 a 5, výsledek bude 0, protože 15 a 5 jsou dělitelné beze zbytku:

let n1 = 15, n2 = 5;
alert(n1 % n2);

Operátor zbytku a zebrování pruhů (zebra stripes)

Zajímavostí o operátoru zbytku je, že se velmi často používá k vytváření takzvaných zebrových pruhů, kdy každé druhé řádce dáte jinou barvu, což usnadňuje čtení řádků. Takže když tisknete všechny řádky v cyklu, použijete operátor zbytku k zjištění, zda právě vypisujete sudý nebo lichý řádek, a poté můžete použít vhodnou CSS třídu nebo styl, abyste podle toho přidali barvu.

Nebudu se zabývat vizuálními detaily zebrování pruhů, ale jak bylo zmíněno, jde všechno o zjištění, zda jsme u sudého nebo lichého čísla, takže se podívejme na příklad, který ukazuje tento koncept a který lze snadno upravit, aby fungoval jakýmkoli způsobem, jaký chcete:

for(let i = 1; i <= 10; i++)
{
	let isEven = (i % 2 == 0);
	document.write("Line " + i + " (" + (isEven ? "even" : "odd") + ")");
}

Operátor přiřazení zbytku: %=

JavaScript také obsahuje operátor přiřazení zbytku, který slouží jako zkratka pro přiřazení výsledku operace zbytku do levé části operace:

let n1 = 12, n2 = 5;
n1 %= n2;
alert(n1);

Všimněte si, že proměnná n1 bude nyní obsahovat výsledek operace, v tomto případě 2.

Shrnutí

Operátor zbytku (%) vrátí zbytek, který zůstane, když je jedno číslo děleno druhým číslem. Lze jej použít v mnoha různých situacích, například k ověření, zda je číslo sudé nebo liché.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!