用到的知識點===>
toFixed(num); toFixed() 方法可把 Number 四舍五入為指定小數位數的數字; 參數num: 代表小數位數;
例:var num = 5.56789; num.toFixed(2); ==>5.57
parseFloat(string); 函數可解析一個字符串,並返回一個浮點數;參數 string 可為數字可為字符串,當參數為字符串時,判斷個字符是否是數字,如果是,則對字符串進行解析,直到到達數字的末端為止,然后以數字返回該數字,如果不是,返回NAN;
例:parseFloat("43ar4s2");==>43 parseFloat("qwar4s2");==>NAN
三目運算符 ;
高精度乘法的一段代碼例子:
function multiply(a, b) {
// 先將數字轉換為字符串
var str1 = a.toString();
var str2 = b.toString();
// 獲取兩個數的小數位數
var lenA = (str1.indexOf('.')==-1)?0:(str1.length-str1.indexOf(".")-1);
var lenB = (str2.indexOf('.')==-1)?0:(str2.length-str2.indexOf(".")-1);
// 比較兩數的精度/位數,精度大的作為結果數精度
var len = Math.max(lenA,lenB);
// 運算結果
var result = parseFloat(a*b).toFixed(len);
return result
}
multiply(4,0.45677);
==>1.82708