Kontrola NaN („není číslo“) je stejně jednoduchá jako kontrola vlastní rovnosti v JavaScriptu.
Dr. Derek Austin 🥳
Sledovat
15. září 2019 · 4 minuty čtení
V JavaScriptu se speciální hodnota NaN (což znamená“ ne číslo „) používá k vyjádření výsledku matematického výpočtu, který nelze vyjádřit jako smysluplné číslo. – Joshua Clanton on A Drip of JavaScript
Speciální hodnota NaN se zobrazí v JavaScriptu, když Math funkce selžou (Math.sqrt(-37)) nebo selže funkce, která se pokouší analyzovat číslo (parseInt("No integers here")).
NaN poté otráví všechny ostatní matematické funkce, což povede ke všem ostatním matematickým operacím, jejichž výsledkem bude NaN.
Upozorňujeme, že v JavaScriptu vrátí dělení 0 Infinity, ne NaN:
Tento výsledek je způsoben tím, jak plovoucí poi nt je definováno obecněji než jen Javascript. Proč? Zhruba proto, že 1/0 je limit 1 / x, protože x se blíží nule. A 0/0 nemá vůbec žádný rozumný výklad, proto NaN.
Co je vlastně NaN?
NaN je vlastnost globálního objektu. Počáteční hodnota NaN je Not-A-Number – stejná jako hodnota Number.NaN. – MDN Docs
Kontrola NaN je těžší, než se zdá
Bohužel při pokusu o kontrolu :
typeof NaN je“ číslo „
NaN se nerovná všem ostatním hodnotám v JavaScriptu
Podívejte se na tento příklad kódu:
Jak tedy zkontrolujeme, zda máme NaN hodnotu, která otráví matematiku?