📌  相关文章
📜  如何在 JavaScript 中解析带两位小数的浮点数?

📅  最后修改于: 2022-05-13 01:56:47.860000             🧑  作者: Mango

如何在 JavaScript 中解析带两位小数的浮点数?

JavaScript 是高级、动态类型和解释的客户端脚本语言。 JavaScript 提供了一个内置的parseFloat()方法来解析字符串并返回一个浮点数。

parseFloat()方法检查字符串的第一个字符是否是数字,如果是数字,该方法将解析字符串直到结束。如果字符串的第一个字符不是数字,则parseFloat()返回NaN (非数字)。 parseFloat()方法解析整个字符串。如果传递的字符串小数点后有 5 位,则输出是小数点后 5 位的浮点数。为了限制小数点后最多 2 位的位数,使用了toFixed()方法。 toFixed()方法将浮点数向上舍入到小数点后 2 位。

句法:

parseFloat(string) 

参数:

  • String:要解析的字符串格式的浮点数。

返回值:如果字符串的第一个字符是数字,则返回解析的浮点数,否则返回 NaN。

句法:

toFixed( int )

范围

  • int:字符串必须解析到的小数点后的位数。

返回值:返回小数点后四舍五入到指定位的数字或字符串。如果指定的值大于实际字符串中小数点后的位数,则用 0 填充结果值以保持最终输出中小数点后的位数。

示例 1:

Javascript
var num1 = parseFloat("10.547892")
var num2 = parseFloat("10.547892").toFixed(2)
console.log("Without using toFixed() method");
console.log(num1);
console.log("Using toFixed() method");
console.log(num2);


Javascript
function ParseFloat(str,val) {
    str = str.toString();
    str = str.slice(0, (str.indexOf(".")) + val + 1); 
    return Number(str);   
}
console.log(ParseFloat("10.547892",2))


输出:

示例 2:上面的示例将数字向上舍入到小数点后 2 位。但在某些情况下,开发人员可能不想四舍五入。这是一种替代方法,可以在不四舍五入的情况下使浮点数达到指定位置。

在此示例中,定义了一个函数ParseFloat() ,它接受 2 个参数。第一个参数是要解析的字符串或数字,第二个参数是小数点后的位数。

方法:首先,第一个参数被转换为字符串,如果传递的参数不是字符串格式,这会有所帮助。字符串现在从开始切分到小数点后指定的位数。最后,将切片后的字符串类型转换为数字后返回。该方法的局限性在于,与parseFloat() 不同,该方法无法检测传递的字符串是否实际包含浮点数。

例子:

Javascript

function ParseFloat(str,val) {
    str = str.toString();
    str = str.slice(0, (str.indexOf(".")) + val + 1); 
    return Number(str);   
}
console.log(ParseFloat("10.547892",2))

输出:

JavaScript 以网页开发而闻名,但它也用于各种非浏览器环境。您可以按照这个 JavaScript 教程和 JavaScript 示例从头开始学习 JavaScript。