JS資料型別之Number型別
阿新 • • 發佈:2019-01-10
Number型別的轉換及方法
var num = 10; num.toString() //"10"轉字串,引數表示幾進位制 num.toFixed(2) //10.00 自動舍入 引數表示小數位數 num.toExponential(1); //"1.0e+1" 數值的字串形式 引數表示小數位數 num.toPrecision(3); //10.0 引數表示所有數字的位數 num.toPrecision(1); //"1e+1" 當引數小於數字的位數時,返回數值的字串形式 Number(""); //0 Number("000011"); //11 Number(true); //1 parseInt("1234.555blue"); //1234 --丟棄小數部分 parseInt("blue1234"); //NaN parseFloat("1234.55.5blue"); //1234.55 parseFloat("blue1234"); //NaN parseInt("1234.555"); //1234 --丟棄小數部分 Math.ceil("1234.555"); //1235 --向上取整,有小數就整數部分加1 Math.round("1234.555"); //1235 --四捨五入 Math.floor("1234.555"); //1234 --向下取整,丟棄小數部分
計算與比較
- 數字的計算與比較
//純數字的計算和比較依據數學運算 1+1 //2 1>2 // false //注意 NaN == NaN // false false == 0 // true true == 1 // true //這意味著 true - 1 //0
- 數字與字串的計算
'1' + 1 //11 加法直接字串連線 '1' - 1 //0 減法乘法除法都把字串轉成數字然後計算 '1' * 2 //2 減法乘法除法都把字串轉成數字然後計算 '1' / 2 //0.5 減法乘法除法都把字串轉成數字然後計算
- 數字與字串的比較
1 >'2' // false 先將數字字串轉為純數字,然後為純數字間的比較
- 字串與字串的比較
依次取每個字元,字元轉為ASCII碼進行比較 '5' > '123' // true '2347' > '237' //false 前兩位相同,比較第3位
計算精度丟失問題
0.1 + 0.2 === 0.30000000000000004 //true 雙精度 64 位浮點數精度丟失 1000000000000000128 === 1000000000000000129 //true
精度丟失參考地址:http://www.cnblogs.com/zichi/p/5034201.html