Jaké operátory existují v JavaScriptu?
sobes.tech AI
Odpověď od AI
V JavaScriptu existuje několik typů operátorů, které vykonávají různé funkce:
-
Přiřazovací operátory: Přiřazují hodnotu proměnné.
=(jednoduché přiřazení)+=,-=,*=,/=,%=(složené přiřazení)**=(přiřazení s mocněním)<<=,>>=,>>>=(posun s přiřazením)&=,|=,^=(bitové operace s přiřazením)&&=,||=,??=(logické přiřazení)
-
Operátory porovnání: Porovnávají dvě hodnoty a vracejí booleovskou hodnotu.
==(rovnost)!=(nerovnost)===(přísná rovnost)!==(přísná nerovnost)>(větší)<(menší)>=(větší nebo rovno)<=(menší nebo rovno)
-
Aritmetické operátory: Provádějí matematické operace.
+(sčítání)-(odčítání)*(násobení)/(dělení)%(zbytek po dělení)**(umocnění)++(inkrementace)--(dekrementace)
-
Bitové operátory: Provádějí operace na úrovni jednotlivých bitů čísla.
&(bitové AND)|(bitové OR)^(bitové XOR)~(bitové NOT)<<(posun vlevo)>>(posun vpravo s zachováním znaménka)>>>(posun vpravo s nulovým doplňováním)
-
Logické operátory: Spojují nebo invertují booleovské hodnoty.
&&(logické AND)||(logické OR)!(logické NOT)
-
Operátory řetězců: Pracují se řetězci.
+(konkatenace)
-
Ternární (podmíněný) operátor: Zkrácená forma
if...else.// podmínka ? výraz1 : výraz2 let výsledek = (a > b) ? "a je větší" : "b je větší nebo rovno a"; -
Operátor čárky: Spouští více výrazů a vrací hodnotu posledního.
let x = 0; let y = (x++, 5); // x se stane 1, y se stane 5 -
Operátory vztahu: Kontrolují typ a přítomnost vlastností.
in(kontroluje, zda vlastnost existuje v objektu)
// 'propertyName' in object console.log('length' in [1, 2, 3]); // trueinstanceof(kontroluje, zda je objekt instancí třídy)
// object instanceof className function Auto() {} let mojeAuto = new Auto(); console.log(mojeAuto instanceof Auto); // true -
Unární operátory:
+(převádí operand na číslo)
console.log(+"5"); // 5 (číslo)-(převádí operand na číslo a invertuje znaménko)
console.log(-"10"); // -10 (číslo) -
Typové operátory:
typeof(vrací řetězec označující typ operand)
// typeof operand console.log(typeof 42); // "number" console.log(typeof "ahoj"); // "string"delete(odstraňuje vlastnost objektu nebo prvek pole)
// delete object.property // delete array[index] let objekt = { a: 1, b: 2 }; delete objekt.a; console.log(objekt); // { b: 2 } -
Operátor skupiny (): Určuje pořadí provádění operací.
let z = (2 + 3) * 4; // Výpočty v závorkách se provádějí první -
Operátor new: Vytváří instanci objektu.
// new Constructor([arguments]) let datum = new Date(); -
Operátor super: Volá metodu rodičovské třídy.
class Rodič { pozdrav() { console.log("Ahoj od Rodiče"); } } class Potomek extends Rodič { pozdrav() { super.pozdrav(); // volání metody rodiče console.log("Ahoj od Potomka"); } } -
Operátor this: Odkazuje na aktuální kontext provádění.
-
Operátor void: Spouští výraz a vrací
undefined.// void výraz console.log(void 0); // undefined -
Operátory nullish coalescing a optional chaining:
??(nullish coalescing operator - vrací pravý operand, pokud levý jenullneboundefined)
// left ?? right let hodnota = undefined ?? "výchozí"; // hodnota bude "výchozí"?.(optional chaining operator - bezpečný přístup k vlastnostem, pokud je mezilehlá hodnotanullneboundefined, nevyhodí chybu)
// object?.property?.method() let uživatel = { adresa: { město: "NYC" } }; console.log(uživatel.adresa?.zipCode); // undefined (bez chyby)