parseFloat()

Questa traduzione è incompleta. Collabora alla traduzione di questo articolo dall’originale in lingua inglese.

Sommario

La funzione parseFloat()  riceve una stringa come argomento e ritorna un numero in virgola mobile.

Sintassi

parseFloat(string)

Parametri

string
Una stringa che rapprestena il valore da analizzare.

Descrizione

parseFloat è una funzione primo livello ( globale ) e non è associata con nessun oggetto.

parseFloat analizza il parametro rappresentato da una stringa e ritorna un numero in virgola mobile. Se rileva un carattere diverso da segni ( + o - ), numeri ( 0 - 9 ), punto di separazione decimale o un esponente, la funzione ritorna il valore fino a quel punto ignorando il carattere rilevato e tutti quelli successvi. Gli spazi bianchi, iniziali e finali, sono consentiti.

Se il primo carattere dell'argomento non può essere analizzato, parseFloat ritorna NaN.

Per questioni aritmetiche, il valore NaN non è di tipo numerico. Per determinare se il risultato di ParseFloat è  NaN occorre chiamare la funzione isNaN. Se NaN viene utilizzato per un operazione aritmetica, la stessa risulterà NaN.

parseFloat può analizzare e ritornare il valore Infinity. La funzione isNaN consente di determinare se il risultato è un numero finito  (not Infinity-Infinity, o NaN).

Esempi

Esempio: parseFloat ritorna un numero

Tutti gli esempi seguenti ritornano 3.14

parseFloat("3.14");
parseFloat("314e-2");
parseFloat("0.0314E+2");
parseFloat("3.14altri caratteri non numerici");

Esempio: parseFloat ritorna NaN

L'esempio seguente ritorna il valore NaN

parseFloat("FF2");

Una funzione di analisi più approfondita.

Talvolta può essere necessario un maggior controllo sulla funzione di parse, le regular expression possono aiutare :

var filterFloat = function (value) {
    if(/^(\-|\+)?([0-9]+(\.[0-9]+)?|Infinity)$/
      .test(value))
      return Number(value);
  return NaN;
}

console.log(filterFloat('421'));               // 421
console.log(filterFloat('-421'));              // -421
console.log(filterFloat('+421'));              // 421
console.log(filterFloat('Infinity'));          // Infinito
console.log(filterFloat('1.61803398875'));     // 1.61803398875
console.log(filterFloat('421e+0'));            // NaN
console.log(filterFloat('421hop'));            // NaN
console.log(filterFloat('hop1.61803398875'));  // NaN

Nota: questo codice è a scopo esplicativo. La funzione non accetta numeri validi come 1. o .5+

Specifiche

Specifica Stato Commento
ECMAScript 1a Edizione. Standard Definizione iniziale.
ECMAScript 5.1 (ECMA-262)
The definition of 'parseFloat' in that specification.
Standard  
ECMAScript 6 (ECMA-262)
The definition of 'parseFloat' in that specification.
Release Candidate  

Compatibilità Browser

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Leggi anche:

Tag del documento e collaboratori

 Hanno collaborato alla realizzazione di questa pagina: wannymiarelli
 Ultima modifica di: wannymiarelli,