diff options
Diffstat (limited to 'files/uk/web/javascript/reference/global_objects/parsefloat')
| -rw-r--r-- | files/uk/web/javascript/reference/global_objects/parsefloat/index.html | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/files/uk/web/javascript/reference/global_objects/parsefloat/index.html b/files/uk/web/javascript/reference/global_objects/parsefloat/index.html new file mode 100644 index 0000000000..41fe2a7650 --- /dev/null +++ b/files/uk/web/javascript/reference/global_objects/parsefloat/index.html @@ -0,0 +1,111 @@ +--- +title: parseFloat() +slug: Web/JavaScript/Reference/Global_Objects/parseFloat +tags: + - JavaScript + - Довідка + - метод +translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat +--- +<div>{{jsSidebar("Objects")}}</div> + +<p><span class="seoSummary">Функція <code><strong>parseFloat()</strong></code> розбирає аргумент (перетворивши його спочатку на рядок за потреби) та повертає число з плаваючою крапкою.</span></p> + +<div>{{EmbedInteractiveExample("pages/js/globalprops-parsefloat.html")}}</div> + +<div class="hidden">The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> and send us a pull request.</div> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox notranslate">parseFloat(<em>string</em>)</pre> + +<h3 id="Параметри">Параметри</h3> + +<dl> + <dt><code><var>string</var></code></dt> + <dd>Значення, яке потрібно розібрати. Якщо цей аргумент не є рядком, то він буде перетворений на рядок за допомогою абстрактної операції <code><a href="https://tc39.es/ecma262/#sec-tostring">ToString</a></code>. {{glossary("whitespace","Пробільний символ")}} на початку цього аргументу ігнорується.</dd> +</dl> + +<h3 id="Значення_що_повертається">Значення, що повертається</h3> + +<p>Число з плаваючою крапкою з наданого рядка <code><var>string</var></code>.</p> + +<p>Або {{jsxref("NaN")}}, коли перший непробільний символ не може бути перетворений на число.</p> + +<h2 id="Опис">Опис</h2> + +<p><code>parseFloat</code> є функцією верхнього рівня, а не методом будь-якого з об'єктів.</p> + +<ul> + <li>Якщо <code>parseFloat</code> зустрічає символ, що не є знаком плюс (<code>+</code>), знаком мінус (<code>-</code> U+002D дефіс-мінус), цифрою (<code>0</code>–<code>9</code>), десятковою крапкою (<code>.</code>), знаком експоненціального запису (<code>e</code> чи <code>E</code>), він повертає значення, записане до цього символа, ігноруючи недозволений символ та символи за ним.</li> + <li><em>Друга</em> десяткова крапка також зупиняє аналіз (символи, що йдуть перед цим символом, будуть розібрані).</li> + <li>Пробільні символи на початку та в кінці аргументу ігноруються.</li> + <li>Якщо перший символ аргументу не може бути перетворений на число (не є жодним з наведених вище символів), <code>parseFloat</code> вертає {{jsxref("NaN")}}.</li> + <li><code>parseFloat</code> також може розібрати та повернути {{jsxref("Infinity")}}.</li> + <li><code>parseFloat</code> перетворює синтаксис {{jsxref("BigInt")}} на {{jsxref("Число", "Number")}}, втрачаючи точність. Це відбувається, оскільки літера <code>n</code> в кінці числа відкидається.</li> +</ul> + +<p>Використовуйте для розбору рядка також функцію {{jsxref("Число", "Number(значення)")}}, яка перетворює на {{jsxref("NaN")}} аргументи з будь-якими недозволеними символами.</p> + +<p><code>parseFloat</code> спрацює для нерядкових об'єктів, якщо вони мають метод {{jsxref("Object.toString", "toString")}} або метод {{jsxref("Object.valueOf", "valueOf")}}. Повернене значення буде таким самим, яким було б після виклику <code>parseFloat</code> на результаті цих методів.</p> + +<h2 id="Приклади">Приклади</h2> + +<h3 id="parseFloat_що_повертає_число"><code>parseFloat</code>, що повертає число</h3> + +<p>Наступні приклади повернуть <code>3.14</code>:</p> + +<pre class="brush: js notranslate">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" } }); +</pre> + +<h3 id="parseFloat_що_вертає_NaN"><code>parseFloat</code>, що вертає <code>NaN</code></h3> + +<p>Наступний приклад поверне <code>NaN</code>:</p> + +<pre class="brush: js notranslate">parseFloat('FF2'); +</pre> + +<h3 id="parseFloat_та_BigInt"><code>parseFloat</code> та <code>BigInt</code></h3> + +<p>Обидва наступних приклади повернуть <code>900719925474099300</code>, втративши точність, оскільки ціле число надто велике, щоб бути представленим як число з плаваючою крапкою:</p> + +<pre class="brush: js notranslate">parseFloat(900719925474099267n); +parseFloat('900719925474099267n'); +</pre> + +<h2 id="Специфікації">Специфікації</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Специфікація</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('ESDraft', '#sec-parsefloat-string', 'parseFloat')}}</td> + </tr> + </tbody> +</table> + +<h2 id="Сумісність_з_веб-переглядачами">Сумісність з веб-переглядачами</h2> + + + +<p>{{Compat("javascript.builtins.parseFloat")}}</p> + +<h2 id="Див._також">Див. також</h2> + +<ul> + <li>{{jsxref("parseInt", "parseInt()")}}</li> + <li>{{jsxref("Number.parseFloat()")}}</li> + <li>{{jsxref("Number.parseInt()")}}</li> + <li>{{jsxref("Number.toFixed()")}}</li> + <li>{{jsxref("isNaN", "isNaN()")}}</li> +</ul> |
