初学者JavaScript是否有问题?

时间:2016-10-15 16:07:53

标签: javascript if-statement nan

function IsValid(value){
    var valid = true;

    if (isNaN(value) || value == ""){
        valid = false;
    }

    return value;
}

初学者在JavaScript,所以我相信这将是一个简单的问题。我们使用上面的函数来检查参数并生成错误消息。除了“isNaN”部分外,它的工作正常。

    if (IsValid(wind)) {
        wind = parseFloat(wind);

        if (wind < MIN_WIND || wind > MAX_WIND) {
            SetError("divWindError", "Wind must be between " + MIN_WIND +
            " and " + MAX_WIND);
            return;
        }
    } else {
        SetError("divWindError", "Wind is not valid");
        return;
    }

2 个答案:

答案 0 :(得分:3)

一些事情。首先,您输入的错误值,其次,您的支票也应该更新,以包含nullundefined支票:

function IsValid(value){
    var valid = true;

    if (!value || isNaN(value)){ // updated check to include NaN, "", undefined, and null
        valid = false;
    }

    return valid; // correct return value is valid, not value
}

答案 1 :(得分:1)

function IsValid(value){
    var valid = true;

    if (isNaN(value) || value == ""){
        valid = false;
    }

    return valid; // you needed to return valid not the value
}