--- title: parseFloat() slug: Web/JavaScript/Reference/Global_Objects/parseFloat tags: - JavaScript - Довідка - метод translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat ---
Функція parseFloat()
розбирає аргумент (перетворивши його спочатку на рядок за потреби) та повертає число з плаваючою крапкою.
parseFloat(string)
string
ToString
. {{glossary("whitespace","Пробільний символ")}} на початку цього аргументу ігнорується.Число з плаваючою крапкою з наданого рядка string
.
Або {{jsxref("NaN")}}, коли перший непробільний символ не може бути перетворений на число.
parseFloat
є функцією верхнього рівня, а не методом будь-якого з об'єктів.
parseFloat
зустрічає символ, що не є знаком плюс (+
), знаком мінус (-
U+002D дефіс-мінус), цифрою (0
–9
), десятковою крапкою (.
), знаком експоненціального запису (e
чи E
), він повертає значення, записане до цього символа, ігноруючи недозволений символ та символи за ним.parseFloat
вертає {{jsxref("NaN")}}.parseFloat
також може розібрати та повернути {{jsxref("Infinity")}}.parseFloat
перетворює синтаксис {{jsxref("BigInt")}} на {{jsxref("Число", "Number")}}, втрачаючи точність. Це відбувається, оскільки літера n
в кінці числа відкидається.Використовуйте для розбору рядка також функцію {{jsxref("Число", "Number(значення)")}}, яка перетворює на {{jsxref("NaN")}} аргументи з будь-якими недозволеними символами.
parseFloat
спрацює для нерядкових об'єктів, якщо вони мають метод {{jsxref("Object.toString", "toString")}} або метод {{jsxref("Object.valueOf", "valueOf")}}. Повернене значення буде таким самим, яким було б після виклику parseFloat
на результаті цих методів.
parseFloat
, що повертає числоНаступні приклади повернуть 3.14
:
parseFloat(3.14); parseFloat('3.14'); parseFloat(' 3.14 '); parseFloat('314e-2'); parseFloat('0.0314E+2'); parseFloat('3.14якісь нечислові символи'); parseFloat({ toString: function() { return "3.14" } });
parseFloat
, що вертає NaN
Наступний приклад поверне NaN
:
parseFloat('FF2');
parseFloat
та BigInt
Обидва наступних приклади повернуть 900719925474099300
, втративши точність, оскільки ціле число надто велике, щоб бути представленим як число з плаваючою крапкою:
parseFloat(900719925474099267n); parseFloat('900719925474099267n');
Специфікація |
---|
{{SpecName('ESDraft', '#sec-parsefloat-string', 'parseFloat')}} |
{{Compat("javascript.builtins.parseFloat")}}