JavaScript
浮點數
最近又開始用 Codewars 來練習刷題,也嘗試開一個 Repository:codewars-challenges 記錄作答結果,蠻喜歡這種能夠慢慢升級的感覺,答題結束還能參考其他人的解法,才恍然大悟原來還有更簡潔的思路。
本篇主要整理 JavaScript 常見的內建函式,列表如下:
Math.floor(.95); // 0
Math.floor(4); // 4
Math.floor(7.004); // 7
Math.floor(-0.95); // -1
Math.floor(-4); // -4
Math.floor(-7.004); // -8
~
):位元反向運算子(波浪號)~
)作用是將數字 x
轉換為 -(x + 1)
~~
):雙位元元反向運算子(兩個波浪號),對正數的作用類似 Math.floor(x)
的無條件捨去,但對負數則結果不同
~10 // -11
~-10 // 9
~10.5 // -11
~-10.5 // 9
~~10 // 10
~~-10 // -10
~~10.5 // 10
~~-10.5 // -10
Math.ceil(.95); // 1
Math.ceil(4); // 4
Math.ceil(7.004); // 8
Math.ceil(-0.95); // -0
Math.ceil(-7.004); // -7
Math.round(20.49); // 20
Math.round(20.5); // 21
Math.round(-20.5); // -20
Math.round(-20.51); // -21
1.23.toFixed(2); // '1.23'
1.234.toFixed(2); // '1.23'
1.235.toFixed(2); // '1.24'
1.236.toFixed(2); // '1.24'
1.244.toFixed(2); // '1.24'
1.245.toFixed(2); // '1.25'
1.246.toFixed(2); // '1.25'
(36).toFixed(4) // '36.0000'
Math.sqrt(2); // 1.4142135623730951
Math.sqrt(4); // 2
Math.sqrt(-2); // NaN
Math.sqrt(0); // 0
function difference(a, b) {
return Math.abs(a - b);
}
difference(3, 5); // 2
difference(5, 3); // 2
difference(-5, -3); // 2