正确的方法来检查如果不是null和一个数字

Appropriate way to check if not null and a number

本文关键字:数字 一个 null 方法 如果不 检查      更新时间:2023-09-26

我看到到处都应该使用!isNaN函数来检查值是否为数字。这种方法对我来说似乎很奇怪,因为我总是使用下面的方法来检查null和一个数字,简单而快速。这种方法有什么问题吗?

var num = getCookie('testnum');
if (+num) { console.log('num is not null and is a number'); }

谢谢

假设你想检查一个字符串是否包含一个js数字(没有其他),那么是的,有一个问题:

var num = "0";

可以通过测试

来修复。
if (num==+num) {

试试这个:

<>之前isNaN(parseInt(num))) {console.log('这是一个数字');}

检查这是否是数字的最佳方法之一,它使用isFinite()isNaN()方法。也不要忘记对象检查。

function isNumber(value) {
    return (
        Object.prototype.toString.call(value) == '[object Number]' &&
        isFinite(value) && 
        !isNaN(value)
    )
}

在这方面你们真的比我聪明多了。在做了更多的研究之后,很明显,确定一个值是否是一个数字对于像我这样的普通程序员来说是一件很深奥的事情。出于这个原因,我决定使用jQuery,让专业人员来处理如此复杂的问题。谢谢你的宝贵时间。以下是我的解决方案,希望是有效的,谢谢。

function isNum(val) {
    return $.isNumeric(val);
}
function isNumNotZero(val) {
    return ($.isNumeric(val) && +val != 0);
}
相关文章: