在日常的Web開發中,我們經常需要對數據進行精度控制。Javascript作為一門強大的腳本語言,它提供了不同的方法來取得小數位數。本文就來介紹一些比較常用的方法。
1. toFixed()方法
toFixed()方法是Javascript中用來保留指定小數點位數的方法,它會對原始數字進行四舍五入并返回一個新的字符串類型值。可以使用toFixed()方法來處理一個數字如下:
在上面的代碼中,我們將數字num保留了兩位小數,然后將結果存儲在新變量newNum中,并將newNum輸出到控制臺。 四舍五入的結果是1.23。toFixed()方法的一個缺點是返回的值以字符串的形式而不是數字返回。 2. Math.round()方法 Math.round()要比toFixed()方法更加靈活,因為它可以讓我們選擇對第幾位小數進行四舍五入,如下所示:var num = 1.23456789;
var newNum = num.toFixed(2);
console.log(newNum); // 1.23
在這個例子中,我們將num乘以100來創建一個擴大的數字,然后我們使用Math.round()方法四舍五入這個擴大的數字,最后我們將結果除以100,以還原小數點的位置。由于Math.round()返回一個數字,因此我們不需要像toFixed()方法一樣在結果上使用parseFloat()方法。 3. Math.floor()方法 Math.floor()方法是用來舍棄小數部分并返回最接近0的結果。它是一個更好的選擇如果你只想去除小數部分而不是四舍五入,如下所示:var num = 1.23456789;
var newNum = Math.round(num * 100) / 100;
console.log(newNum); // 1.23
這個例子中,我們將num傳入Math.floor()方法,結果為1。所以我們得到了比原來小的整數。 4. parseFloat()方法 parseFloat()方法是一個可以將字符串解析成數字的方法。即使是一個帶有小數點的字符串也可以解析它,例如:var num = 1.23456789;
var newNum = Math.floor(num);
console.log(newNum); // 1
在上面的代碼中,parseFloat()方法將numStr轉換成其等效的數字值并將其返回給變量num。parseFloat()方法是一個很有用的方法,允許我們從文本文件中讀取數字并將其轉換為數字,而不會失去精度。 總結 本文介紹了四種用于獲取小數位數的方法,每種方法都有其自身的特點。toFixed()方法可以保留指定小數位數并返回一個新值(字符串類型),Math.round()方法可以四舍五入到所需的小數位數,并返回一個數字,Math.floor()方法可以舍棄小數部分并返回最接近0的值,而parseFloat()方法則可以將字符串轉換為數字。使用這些方法可以幫助我們在進行精度控制時更加方便和易于處理。var numStr = "1.2345";
var num = parseFloat(numStr);
console.log(num); // 1.2345