我正在寻找检查var是否为数字的最终最佳方法

function isInt(n){
   return !isNaN(parseInt(n * 1));
}

alert(isInt(""));//true


该网站对我撒谎http://www.inventpartners.com/content/javascript_is_int

而分析服务人员https://stackoverflow.com/a/3886106/908879的第二条评论使我非常害怕,无法使用他的答案

请帮助我找到正确的一个plxplx

最佳答案

以下可能是您问题的一个很好的解决方案。但是,如果它是浮点数,则返回false

function isInt(n){
    return !isNaN(parseFloat(n)) && isFinite(n) && (n % 1 == 0);
};


如果您想知道它是否为一般数字,最好的解决方案是

function isNumber(n){
    return !isNaN(parseFloat(n)) && isFinite(n);
};


另请参阅:http://dl.dropbox.com/u/35146/js/tests/isNumber.html

09-25 15:57