Page 81 - 6105
P. 81

NaN
                      Якщо  математична  операція  не  може  бути  здійснена,  то  повертається

               спеціальне значення NaN (Not-A-Number).

                      Наприклад,  ділення  0/0  в  математичному  сенсі  не  визначене,  тому  його


               результат NaN:

                      alert (0/0); // NaN

                      Значення  NaN  використовується  для  позначення  математичної  помилки  і
               має такі властивості:


                      Значення NaN – єдине в своєму роді, яке не дорівнює нічому, включаючи
               себе.


                      Наступний код нічого не виведе:

                          if (NaN == NaN) alert ( "=="); // Жоден виклик

                          if (NaN === NaN) alert ( "==="); // не спрацює
                      Значення  NaN  можна  перевірити  спеціальною  функцією  isNaN  (n),


               якаперетворює аргумент до числа і повертає true, якщо вийшло NaN, і false - для
               будь-якого іншого значення.


                      var n = 0/0;

                      alert (isNaN (n)); // true

                      alert (isNaN ( "12")); // false, рядок перетворилася до
               звичайного числа 12


                      Значення  NaN  «чіпляється».  Будь-яка  операція  з  NaN
               повертає NaN.


                      alert (NaN + 1); // NaN
                      Якщо  аргумент  isNaN  -  не  число,  то  він  автоматично  перетворюється  до

               числа.  Звідси  випливає  спосіб  перевірки  значення  на  NaN:  можна  перевірити

               значення на рівність самому собі, якщо не дорівнює - то NaN:


                      var n = 0/0;
                      if (n! == n) alert ( 'n = NaN!');



                                                                80
   76   77   78   79   80   81   82   83   84   85   86