javascript自写工具方法

判断数字是integer还是float

function isFloat(n) {
    return n === +n && n !== (n|0);
}

function isInteger(n) {
    // 仅能检查32位的数字
    return n === +n && n === (n|0);
}

要点:

  • n === +n用于检测是否numeric
  • n|0用于round
  • 由于OP操作符(即|),目前仅支持32位,故超过32位的数字无法通过isInteger检测

灵感来源

javascript中针对float的ceil及floor

function floorFloat(num, precision) {
    return +(Math.floor(+(num + 'e' + (precision))) + 'e' + -(precision));
}

function ceilFloat(num, precision) {
    return +(Math.ceil(+(num + 'e' + (precision))) + 'e' + -(precision));
}

灵感来源

原文地址:https://www.cnblogs.com/lewh/p/6323001.html