مخفف عبارت Not a Number هست. وقتی یک عملیات ریاضی مثل ضرب روی مقادیر غیر عددی اعمال بشه خروجی NaN خواهد بود. خروجی عبارتهای زیر NaN هستن:
{} * undefined; {} * null; '' * 'a'; 1 * {}; undefined + null; 1 + NaN; 1 + undefined;
برای اینکه ببینیم یک مقدار NaN هست از تابع isNaN استفاده میکنیم:
isNaN({} * undefined); // true isNaN({} * null); // true isNaN('' * 'a'); // true isNaN(1 * {}); // true isNaN(undefined + null); // true isNaN(1 + NaN); // true isNaN(1 + undefined); // true
منبع: