# JavaScript如何將浮點數轉為整數
在JavaScript開發中,處理浮點數轉整數是常見需求。本文將詳細介紹5種常用方法及其適用場景,幫助開發者選擇最佳方案。
## 一、Math.trunc() - 直接去除小數部分
```javascript
Math.trunc(3.14); // 3
Math.trunc(-2.7); // -2
特點: - ES6新增方法 - 直接截斷小數部分 - 不進行四舍五入 - 兼容性:IE不支持
parseInt(4.99); // 4
parseInt("7.8"); // 7
注意點: - 會先轉換為字符串再解析 - 遇到非數字字符停止轉換 - 性能較Math方法稍差
3.14 | 0; // 3
~~2.9; // 2
-5.9 >> 0; // -5
優勢: - 執行速度最快 - 32位有符號整數范圍(-231~231-1)
局限: - 超出32位會溢出 - 負數處理與Math.trunc()一致
Math.floor(5.9); // 5
Math.ceil(2.1); // 3
Math.floor(-3.7); // -4
區別: - floor:向小取整 - ceil:向大取整 - 負數處理需特別注意
Number(2.718.toFixed(0)); // 3
+"1.99".toFixed(0); // 2
特點: - 會進行四舍五入 - 返回的是字符串需要二次轉換
方法 | 四舍五入 | 負數處理 | 性能 | 適用場景 |
---|---|---|---|---|
Math.trunc() | × | 直接截斷 | 高 | 精確截斷 |
parseInt() | × | 直接截斷 | 中 | 字符串轉換 |
位運算符 | × | 直接截斷 | 最高 | 高性能場景 |
Math.floor() | × | 向更小取整 | 高 | 向下取整需求 |
toFixed() | √ | 四舍五入 | 低 | 需要四舍五入的情況 |
// 推薦寫法
const num1 = Math.trunc(floatingNum); // ES6+
const num2 = floatingNum | 0; // 兼容寫法
掌握這些方法后,開發者可以根據具體場景選擇最適合的浮點數轉整數方案。 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。