function isFloat(n) { return n === +n && n !== (n|0); } function isInteger(n) { // 僅能檢查32位的數字 return n === +n && n === (n|0); }
要點:javascript
n === +n
用於檢測是否numericn|0
用於roundOP
操做符(即|
),目前僅支持32位,故超過32位的數字沒法經過isInteger
檢測靈感來源java
function floorFloat(num, precision) { return +(Math.floor(+(num + 'e' + (precision))) + 'e' + -(precision)); } function ceilFloat(num, precision) { return +(Math.ceil(+(num + 'e' + (precision))) + 'e' + -(precision)); }
靈感來源code