Sobes.tech
Middle

Kas yra NaN ir kokiais atvejais jis atsiranda?

sobes.tech AI

Atsakymas iš AI

NaN (Ne skaičius) — tai speciali reikšmė JavaScript'e, kuri nurodo, kad operacijos rezultatas nėra skaičius. Ji atsiranda, kai matematinė operacija ar konvertavimas negali grąžinti teisingos skaitinės vertės.

Pavyzdžiai, kai pasirodo NaN:

  • 0 padalinta iš 0: 0 / 0.
  • Ne skaitmeninio teksto konvertavimas į skaičių: Number('abc').
  • Netinkamų matematikos operacijų rezultatas, pvz., kvadratinės šaknies iš neigiamo skaičiaus išgavimas: Math.sqrt(-1).

Svarbu žinoti, kad NaN nėra lygus sau (NaN !== NaN), todėl patikrinimui naudojamos funkcijos isNaN() arba Number.isNaN().

console.log(0 / 0); // NaN
console.log(Number('abc')); // NaN
console.log(Math.sqrt(-1)); // NaN
console.log(NaN === NaN); // false
console.log(Number.isNaN(NaN)); // true