--- title: NaN slug: Web/JavaScript/Reference/Global_Objects/NaN translation_of: Web/JavaScript/Reference/Global_Objects/NaN ---
{{jsSidebar("Objects")}}

Sommario

La proprietà globale NaN è un valore che rappresenta un non numero (Not-a-Number).

{{js_property_attributes(0,0,0)}}

Sintassi

NaN

Descrizione

Nan è una proprietà del global object e indica il fatto che un certo valore non è un numero legale/valido.

Il valore iniziale di Nan è Not-A-Number — lo stesso valore che si può riscontrare accedendo a Number.NaN. Nei browser moderni NaN è una proprietà non configurabile e non scrivibile (read-only).

NaN è restituito principalmente come valore di fallimento dalle funzioni "matematiche" come Math.sqrt(-1) oppure quando si prova ad eseguire il parseInt di una stringa che non contiene cifre numeriche come parseInt("blabla")

Testare il valore NaN

Gli operatori di uguaglianza (== o ===) non possono essere usati per verificare il valore di NaN. Deve essere invece utilizzato il metodo IsNaN() presente sia nell'oggetto globale {{jsxref("Global_Objects/isNaN", "isNaN()")}} che nell'oggetto Number {{jsxref("Number.isNaN()")}}.  

NaN === NaN;        // false
Number.NaN === NaN; // false
isNaN(NaN);         // true
isNaN(Number.NaN);  // true

Specifiche

Specification Status Comment
ECMAScript 1st Edition. Standard Initial definition. Implemented in JavaScript 1.3
{{SpecName('ES5.1', '#sec-15.1.1.1', 'NaN')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-value-properties-of-the-global-object-nan', 'NaN')}} {{Spec2('ES6')}}  

Compatibilità

{{Compat("javascript.builtins.NaN")}}

Vedi anche