如何在 JavaScript 中将浮点数转换为整数?


在本教程中,我们将学习如何在 JavaScript 中将浮点数转换为整数。整数是不包含小数部分的数字。例如,5.22 是包含小数部分的浮点数,而整数不包含小数部分。因此,本教程的目标是从数字中去除小数部分。

我们可以采用多种方法从浮点数中去除小数部分使其成为整数,其中一些方法我们已在此处讨论。

  • 使用Math.trunc()Math.round() 方法

  • 使用parseInt() 方法

  • 使用按位或 (|) 运算符

  • 从浮点数中减去小数部分

使用 Math.trunc() 和 Math.round() 方法

Math.trunc() 方法会截断浮点数的小数部分并将其转换为整数。

Math.round() 方法将小数四舍五入到最接近的整数。例如,如果小数部分小于 0.5,则返回小于当前数字的最接近的数字,如果小数部分大于 0.5,则返回大于浮点数的最接近的数字。

语法

用户可以按照以下语法使用Math.trunc()Math.round() 方法。

let result = Math.trunc ( number );
let result = Math.round ( number );

参数

  • number − 需要转换为整数的浮点数。

示例

在本示例中,我们将使用Math.trunc()Math.round() 方法将浮点数转换为整数。

<html>
<head>
   <title>convert a float number to a whole number in JavaScript</title>
</head>
   <body>
   <h3>Convert a float number to a whole number in JavaScript</h3>
   <p>Converting 42.99 to whole number using Math.trunc() method:</p>
   <div id="output1"></div>
   <p>Converting 42.99 to whole number using Math.round() method:</p>
   <div id="output2"></div>
   <script>
      let output1 = document.getElementById("output1");
      let output2 = document.getElementById("output2");
      let number = 42.99;
      let result = Math.trunc(number);
      output1.innerHTML = result;
      number = 42.99;
      result = Math.round(number);
      output2.innerHTML = result;
   </script>
</body>
</html>

在以上输出中,用户可以看到 Math.trunc() 方法已删除了小数部分,而 Math.round() 方法已将数字四舍五入到最接近的整数。

使用 parseInt() 方法

在此方法中,我们将使用parseInt() 方法。parseInt() 方法从 JavaScript 中的浮点数或字符串中提取整数。另一个最简单的解决方案是从浮点数中获取整数部分。

语法

用户可以按照以下语法使用parseInt() 方法。

let result = parseInt( number );

示例

在以下示例中,我们使用了parseInt() 方法将浮点数转换为整数。

<html>
<body>
   <h2>Convert a float number to a whole number in JavaScript</h2>
   <h4>Converting 22.19234 to whole number using parseInt() method:</h4>
   <div id="outputDiv"></div>
   <script>
      let outputDiv = document.getElementById("outputDiv");
      let number = 22.19234;
      let res = parseInt(number);
      outputDiv.innerHTML = res;
   </script>
</body>
</html>

使用按位或 (|) 运算符

当我们对浮点数与 0 执行按位或 (|) 操作时,它会删除当前数字的小数部分并将其转换为整数。类似地,用户还可以使用其他按位运算符,例如双取反运算符 (~~)、右移左移运算符。

语法

let result = number | 0; // number is the float number

示例

在给定的示例中,我们正在对 209.54321 与 0 执行按位或操作并将其转换为整数。之后,我们使用 JavaScript 渲染了输出。

<html>
<body>
   <h2>Convert a float number to a whole number in JavaScript</h2>
   <h4>Converting 209.54321 to whole number using Bitwise OR (|) operator:</h4>
   <div id="outputDiv"></div>
   <script>
      let outputDiv = document.getElementById("outputDiv");
      let number = 209.54321;
      let res = number | 0;
      outputDiv.innerHTML = res;
   </script>
</body>
</html>

从浮点数中减去小数部分

此方法将找到浮点数的小数部分。要找到浮点数的小数部分,我们只需要取该数字模 1。接下来,我们将从小数中减去小数部分。

语法

let fractionalPart = number%1;
let result = number – fractionalPart;

示例

在下面的示例中,我们通过取数字模 1 来查找数字的小数部分。之后,我们从数字中减去小数部分以删除其中的小数部分。

<html>
<body>
   <h4>Converting 856.24657 to whole number by removing the fractional part:</h4>
   <div id="outputDiv"></div>
   <script>
      let outputDiv = document.getElementById("outputDiv");
      let number = 856.24657;
      let fractionalPart = number % 1;
      let result = number - fractionalPart;
      outputDiv.innerHTML = result;
   </script>
</body>
</html>

结论

我们讨论了将浮点数转换为整数的四种方法。第二种方法是最简单的方法,因为它只从浮点数中解析整数。但是,用户应该使用第三种方法,因为它是最快的方法。

更新于: 2022年7月20日

5K+ 浏览量

开启你的职业生涯

通过完成课程获得认证

立即开始
广告