📅  最后修改于: 2023-12-03 15:16:06.426000             🧑  作者: Mango
在JavaScript中,parseFloat()函数可解析一个字符串,并返回一个浮点数。通常情况下,返回的浮点数会有很多位小数,若想要将其保留两位小数,则需要进行特殊处理。本篇文章将介绍如何使用parseFloat()函数,并保留两位小数。
parseFloat()函数用来解析一个字符串,并返回一个浮点数。在使用该函数时,需要将要解析的字符串作为参数传入,如下所示:
var num = parseFloat("3.14");
console.log(num); //输出3.14
需要注意的是,如果要解析的字符串不是一个合法的数字,则返回NaN,如下所示:
var num = parseFloat("abc");
console.log(num); //输出NaN
若想要将一个浮点数保留两位小数,则可以通过以下两种方法实现:
toFixed()方法可将一个数字保留指定的小数位数,并以字符串形式返回结果。在使用该方法时,需要先使用parseFloat()方法将字符串转为浮点数,然后再使用toFixed()方法进行保留,如下所示:
var num = "3.1415926";
var numFloat = parseFloat(num);
var numFixed = numFloat.toFixed(2);
console.log(numFixed); //输出3.14
需要注意的是,toFixed()方法返回的结果是字符串类型,如果需要将其转为数字类型,则需要使用parseFloat()方法。
使用正则表达式的方法,可以实现更为灵活的保留小数位数。如下所示:
var num = "3.1415926";
var numFixed = parseFloat(num).toString().match(/^\d+(?:\.\d{0,2})?/);
console.log(numFixed); //输出3.14
以上代码中,首先使用parseFloat()方法将字符串转为浮点数,然后再将其转为字符串类型,并使用正则表达式匹配出三位小数中的前两位,并返回结果。需要注意的是,match()方法返回的是一个数组,如果需要将其转为数字类型,则需要使用parseFloat()方法。
本篇文章介绍了如何使用parseFloat()函数,并保留两位小数。值得注意的是,toFixed()方法返回的结果是字符串类型,使用时需特别注意。除此之外,使用正则表达式的方法可以实现更为灵活的保留小数位数。