parseFloat()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since иÑÐ»Ñ 2015 г..
ФÑнкÑÐ¸Ñ parseFloat() пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ ÑÑÑÐ¾ÐºÑ Ð² каÑеÑÑве аÑгÑменÑа и возвÑаÑÐ°ÐµÑ Ð´ÐµÑÑÑиÑное ÑиÑло (ÑиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑÑей ÑоÑкой)
ÐнÑеÑакÑивнÑй пÑимеÑ
function circumference(r) {
return parseFloat(r) * 2.0 * Math.PI;
}
console.log(circumference(4.567));
// Expected output: 28.695307297889173
console.log(circumference("4.567abcdefgh"));
// Expected output: 28.695307297889173
console.log(circumference("abcdefgh"));
// Expected output: NaN
СинÑакÑиÑ
parseFloat(ÑÑÑока)
ÐаÑамеÑÑÑ
ÑÑÑока-
ТекÑÑÐ¾Ð²Ð°Ñ ÑÑÑока, из коÑоÑой вам надо вÑделиÑÑ Ð´ÐµÑÑÑиÑное ÑиÑло.
ÐозвÑаÑаемое знаÑение
ЧиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑÑей ÑоÑкой, полÑÑенное из ÑÑÑоки. ÐÑли пеÑвÑй Ñимвол не Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑконвеÑÑиÑован в ÑиÑло, Ñо возвÑаÑаеÑÑÑ NaN.
ÐпиÑание
parseFloat - ÑÑо вÑÑокоÑÑÐ¾Ð²Ð½ÐµÐ²Ð°Ñ ÑÑнкÑиÑ, не пÑивÑÐ·Ð°Ð½Ð½Ð°Ñ Ð½Ð¸ к Ð¾Ð´Ð½Ð¾Ð¼Ñ Ð¾Ð±ÑекÑÑ.
parseFloat ÑазбиÑÐ°ÐµÑ ÑекÑÑовÑÑ ÑÑÑокÑ, иÑÐµÑ Ð¸ возвÑаÑÐ°ÐµÑ Ð¸Ð· Ð½ÐµÑ Ð´ÐµÑÑÑиÑное ÑиÑло. ÐÑли ÑÑнкÑÐ¸Ñ Ð²ÑÑÑеÑÐ¸Ñ Ð·Ð½Ð°Ðº, оÑлиÑнÑй Ð¾Ñ (+ или -), ÑиÑÑ(0-9), ÑазделиÑелÑной ÑоÑки, или показаÑÐµÐ»Ñ ÑÑепени, она веÑнÑÑ Ð·Ð½Ð°Ñение, пÑедÑеÑÑвÑÑÑее ÑÑÐ¾Ð¼Ñ Ð·Ð½Ð°ÐºÑ, игноÑиÑÑÑ Ð²Ñе поÑледÑÑÑие ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ . ÐопÑÑкаÑÑÑÑ Ð¿Ð¾Ð·Ð°Ð´Ð¸ и впеÑеди идÑÑие пÑобелÑ.
ÐÑли пеÑвÑй Ñимвол нелÑÐ·Ñ Ð¿ÑивеÑÑи к ÑиÑÐ»Ð¾Ð²Ð¾Ð¼Ñ Ð²Ð¸Ð´Ñ, parseFloat веÑнÑÑ NaN.
С ÑоÑки зÑÐµÐ½Ð¸Ñ Ð¼Ð°ÑемаÑики, знаÑение NaN не ÑвлÑеÑÑÑ ÑиÑлом в какой-либо ÑиÑÑеме ÑÑиÑлениÑ. ЧÑÐ¾Ð±Ñ Ð¾Ð¿ÑеделиÑÑ, веÑнÑÑ Ð»Ð¸ parseFloat знаÑение NaN в каÑеÑÑве ÑезÑлÑÑаÑа, можно вÑзваÑÑ ÑÑнкÑÐ¸Ñ isNaN. ÐÑли NaN ÑÑаÑÑвÑÐµÑ Ð² аÑиÑмеÑиÑеÑкиÑ
опеÑаÑиÑÑ
, ÑезÑлÑÑаÑом Ñакже бÑÐ´ÐµÑ NaN.
parseFloat Ñакже Ð¼Ð¾Ð¶ÐµÑ Ð²ÐµÑнÑÑÑ Ð·Ð½Ð°Ñение Infinity ("беÑконеÑноÑÑÑ"). ÐÑ Ð¼Ð¾Ð¶ÐµÑе иÑполÑзоваÑÑ ÑÑнкÑÐ¸Ñ isFinite, ÑÑÐ¾Ð±Ñ Ð¾Ð¿ÑеделиÑÑ, ÑвлÑеÑÑÑ Ð»Ð¸ ÑезÑлÑÑÐ°Ñ ÐºÐ¾Ð½ÐµÑнÑм ÑиÑлом (not Infinity, -Infinity, или NaN).
ÐÑимеÑÑ
>parseFloat возвÑаÑÐ°ÐµÑ ÑиÑло
ÐÑе пÑимеÑÑ Ð½Ð¸Ð¶Ðµ веÑнÑÑ 3.14
parseFloat(3.14);
parseFloat('3.14');
parseFloat('314e-2');
parseFloat('0.0314E+2');
parseFloat('3.14какие-нибÑÐ´Ñ Ð½Ðµ ÑиÑÑовÑе знаки');
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 возвÑаÑÐ°ÐµÑ NaN
ÐÑÐ¸Ð¼ÐµÑ Ð½Ð¸Ð¶Ðµ веÑнÑÑ NaN
parseFloat("FF2");
СпеÑиÑикаÑии
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-parsefloat-string> |