Miluji JavaScript, je to můj oblíbený programovací jazyk, ale rád se ponořím do jiných jazyků, protože nabízejí nový pohled na paradigmata kódování. Do JavaScriptu byly přidány syntaxe, o kterých jsem viděl, že mě zaujaly (například ??
ve volitelném řetězení) a nyní získáme další -- logické operátory přiřazení. Pojďme se podívat, jak je lze použít!
||=
Or-Or-Equals se používá k přiřazení hodnoty, když žádná neexistuje:
let name; const defaultName = "Guest"; name ||= defaultName; // name >> "Guest" // Equivalent: name || (name = defaultName);
??=
Question-Question-Equals přiřadí hodnotu, když hodnota není definována:
const j = 1; j??= 10 // j >> 1 x = undefined; x ??= 10 // x >> 10
&&=
And-And-Equals přiřadí hodnotu poslední v řadě, když jsou obě definovány:
let name; const defaultName = "Guest"; name &&= defaultName; name >> undefined // Both have values let name = "David"; const defaultName = "Guest"; name &&= defaultName; // name >> "Guest" // Equivalent: name && (name = defaultName);
Obávám se, alespoň z krátkodobého hlediska, že tato nová syntaxe může být obtížně udržovatelná, ale stejně jako na každou jinou novou jazykovou funkci si na ni zvykneme!