Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
<meta name="description" content="JavaScript NaN" />
  <meta charset="utf-8">
  <title>JS Bin</title>
</head>
<body>
</body>
</html>
 
console.log('Math.sqrt(-2)', Math.sqrt(-2));
console.log('Math.log(-1)', Math.log(-1));
console.log('0/0', 0/0);
console.log('parseFloat("foo")', parseFloat('foo'));
console.log('typeof NaN is ' + typeof NaN);
var x = Math.sqrt(-2);
var y = Math.log(-1);
console.log('Math.sqrt(-2) == Math.log(-1)', x == y);
var x = Math.sqrt(-2);
var y = Math.log(-1);
console.log('Math.sqrt(-2) === Math.log(-1)', x === y);
var x = Math.sqrt(-2);
var y = Math.sqrt(-2);
console.log('Math.sqrt(-2) === Math.sqrt(-2)', x === y);
var x = Math.sqrt(-2);
console.log('x = Math.sqrt(-2); x === x', x === x);
console.log('NaN === NaN', NaN === NaN);
console.log('isNaN(NaN)', isNaN(NaN));
console.log('isNaN(Math.sqrt(-2))', isNaN(Math.sqrt(-2)));
console.log('isNaN(\'hello\')', isNaN('hello'));
console.log('isNaN([\'x\'])', isNaN(['x']));
console.log('isNaN({})', isNaN({}));
var My = {
  isNaN: function (x) { return x !== x; }
}
My.isNaN = function(x) { return typeof x === 'number' && isNaN(x)};
console.log('My.isNaN(NaN)', My.isNaN(NaN));
console.log('My.isNaN(Math.sqrt(-2))', My.isNaN(Math.sqrt(-2)));
console.log('My.isNaN(\'hello\')', My.isNaN('hello'));
console.log('My.isNaN([\'x\'])', My.isNaN(['x']));
console.log('My.isNaN({})', My.isNaN({}));
if (Number.isNaN) {
  console.log('Number.isNaN(NaN)', Number.isNaN(NaN));
  console.log('Number.isNaN(Math.sqrt(-2))', Number.isNaN(Math.sqrt(-2)));
  console.log('Number.isNaN(\'hello\')', Number.isNaN('hello'));
  console.log('Number.isNaN([\'x\'])', Number.isNaN(['x']));
  console.log('Number.isNaN({})', Number.isNaN({}));
}
Output 300px

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
ariyapro
0viewers