【8/27まで】Udemyの人気コースが今なら1,200円から!!

【JavaScript入門】NaNの基本とisNaNメソッドの使い方

【JavaScript入門】NaNの基本とisNaNメソッドの使い方

NaNとは

NaNは、「Not a Number」の略で、数値ではないものを表します。

js

console.log(Number.NaN);//NaN

NaNとして判定されるもの

以下の場合は、結果としてNaNが返されます。

  • 0を0で除算した場合
  • InfinityをInfinityで除算した場合
  • InfinityをInfinityで引き算した場合

js

console.log('0/0は' + (0/0));// 0/0はNaN
console.log('Infinity/Infinityは' + (Infinity/Infinity));// Infinity/InfinityはNaN
console.log('Infinity - Infinityは' + (Infinity - Infinity));// Infinity - InfinityはNaN

falseとして判定されるもの

NaN自分自身と等しくないという性質と、すべての数値と等しくないという性質を持ちます。
そのため、以下の場合は結果としてfalseが返ります。

js

var num1 = NaN;
var num2 = NaN;
console.log(num1 == num1);//false
console.log(num1 === num1);//false

console.log(num1 == num2);//false
console.log(num1 === num2);//false

NaNであるかどうかを判定する方法

NaNであるかどうかを判定するにはisNaNを用います。NaNの場合はtrueが返り、NaNでない場合はfalseが返ります。

js

let str = new String('123');
console.log(Number.isNaN(str));//false

let num = new Number(123);
console.log(Number.isNaN(num));//false

let num2 = new Number();
num2 = 0 / 0;
console.log(Number.isNaN(num2));//true;

console.log(Number.isNaN(NaN));//true;
console.log(Number.isNaN(Number.NaN));//true;
console.log(Number.isNaN(0 / 0));//true;

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です