Sobes.tech
Junior — Middle

Маънои арзиши NaN дар контексти JavaScript чист?

sobes.tech AI

Ҷавоб аз AI

Дар JavaScript, арзиши NaN маънои "Not-a-Number" (нақли рақам) дорад. Ин арзиши махсуси рақамӣ аст, ки нишон медиҳад, ки натиҷаи ҳисоббаробарӣ рақами дуруст нест.

NaN масалан, вақте пайдо мешавад, ки кӯшиш мекунем, ки амалҳои арифметикӣ бо арзишҳои ғайри рақамӣ анҷом диҳем, ки онҳоро ба рақам табдил додан мумкин нест:

console.log(0 / 0);          // NaN
console.log(parseInt("abc")); // NaN
console.log(Math.sqrt(-1));  // NaN

Хусусиятҳои NaN:

  • NaN аз навъи number аст.
  • NaN ба чизе баробар нест, ҳатто ба худи худ: NaN === NaN баргардонанда false.
  • Барои санҷиши он, ки арзиш NaN аст, функсияи isNaN() ё, боэътимодтар, Number.isNaN() истифода мешавад.

Масалан, санҷиш:

let value = NaN;
console.log(value === NaN);           // false
console.log(isNaN(value));            // true
console.log(Number.isNaN(value));    // true

Ин тариқ, NaN ҳамчун нишондиҳандаи хато дар ҳисобҳои рақамӣ хизмат мекунад ва кӯмак мекунад, ки амалиёти нодуруст ошкор карда шаванд.