Tento překlad není kompletní. Prosím pomozte přeložit tento článek z angličtiny.

Funkce parseFloat() naparsuje argument a vrátí číslo s plovoucí desetinnou čárkou.

Syntaxe

parseFloat(hodnota)

Parametr

value
Hodnota, kterou chcete naparsovat.

Návratová hodnota

Číslo s plovoucí desetinnou čárkou je naparsováno ze zadané hodnoty. Jestliže hodnotu nelze převést na číslo je namísto toho vráceno NaN.

Popis

parseFloat je funkce vysoké úrovně a není spojena se žádným objektem.

parseFloat naparsuje argument a vrátí číslo s plovoucí desetinnou čárkou. Pokud narazí na znak jiný než (+ or -), číselný (0-9), desetinnou čárku, nebo exponent, vrací hodnotu do tohoto bodu a ignoruje tento znak a všechny další znaky. Mezery na začátku a konci jsou povoleny.

Jestliže je hodnota textový řetězec a první znak nemůže být zkonvertován na číslo, tak parseFloat vrátí NaN.

Pro aritmetické učely, hodnota NaN není číslo v žádném základu. Můžete zavolat funkci isNaN k zjištění, jestli výsledek parseFloat je NaN. Jestliže s NaN se pracuje v aritmetických operacích, tak výsledek těchto operací bude také NaN.

parseFloat může také naparsovat a vrátit hodnotu Infinity. Můžete použít funkci isFinite ke zjištění, jestli výsledek je konečné číslo (ne Infinity, -Infinity, nebo NaN).

parseFloat také dokáže naparsovat objekt, pokud má definované metody  toString nebo valueOf. Vrácená hodnota je stejná jako kdyby parseFloat byl volán na výsledek volámí té metody.

Příklady

parseFloat vracející číslo

Všechny následující příklady vracejí číslo 3.14

parseFloat(3.14);
parseFloat('3.14');
parseFloat('314e-2');
parseFloat('0.0314E+2');
parseFloat('3.14more non-digit characters');

var foo = Object.create(null);
foo.toString = function () { return "3.14"; };
parseFloat(foo);

var foo = Object.create(null);
foo.valueOf = function () { return "3.14"; }; 
parseFloat(foo);​​​​​

 

parseFloat vracející NaN

Následující příklad vrací NaN

parseFloat('FF2');

Striktnější parsovací funkce

Někdy je užitečné mít striktnější způsob na parsování hodnot float, na to můžou pomoci regulární výrazy:

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'));          // Nekonečno
console.log(filterFloat('1.61803398875'));     // 1.61803398875
console.log(filterFloat('421e+0'));            // NaN
console.log(filterFloat('421hop'));            // NaN
console.log(filterFloat('hop1.61803398875'));  // NaN

Tento kód je jen příklad, nedokáže vzít validní čísla jako 1. nebo .5. Jestliže chcete použít striktnější kontrolu, pak můžete místo toho použít např. konstruktor třídy Number.

Specifikace

Specifikace Status Komentář
ECMAScript 1st Edition (ECMA-262) Standard První definice.
ECMAScript 5.1 (ECMA-262)
The definition of 'parseFloat' in that specification.
Standard  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'parseFloat' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'parseFloat' in that specification.
Draft  

Podpora v prohlížečích

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
parseFloatChrome Full support YesEdge Full support YesFirefox Full support 1IE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yesnodejs Full support Yes

Legend

Full support  
Full support

Podívejte se také na

Štítky a přispěvatelé do dokumentace

Přispěvatelé této stránky: mdnwebdocs-bot, VelociraptorCZE
Poslední aktualizace od: mdnwebdocs-bot,