JavaScript函数未返回true

JavaScript function not returning true

本文关键字:true 返回 函数 JavaScript      更新时间:2023-09-26

我有下面的js函数,我正在努力确定它为什么不会返回"true"。我已经通过在逻辑块中添加警报来验证逻辑块是否被击中,但它似乎跳过了包含return语句的行。

function requiresMatchLevel(fields) {
        $.each(fields, function (i, field) {
            if (field.OperationParamName() == "MatchLevel" && field.Include()) {
                return true;
            }
        });
        return false;
    };

return基于每个函数进行操作。在传递给$.each的函数中返回不会使外部函数返回某些内容。

如果在传递给$.each的函数中返回一些内容,jQuery将收到结果。这里唯一有效的值是false,它使jQuery脱离了循环。

function requiresMatchLevel(fields) {
    var result = false;
    $.each(fields, function (i, field) {
        if (field.OperationParamName() == "MatchLevel" && field.Include()) {
            result = true;
            return false;  // break out of loop - no need to continue
        }
    });
    return result;
};

怎么样

function requiresMatchLevel(fields) {
        var isMatch = false;
        $.each(fields, function (i, field) {
            if (field.OperationParamName() == "MatchLevel" && field.Include()) {
                isMatch = true;
            }
        });
        return isMatch;
    };

当运行jquery函数并返回true时,true将返回给jquery。试试这个:

function requiresMatchLevel(fields) {
    var toBeReturned=false;
    $.each(fields, function (i, field) {
        if (field.OperationParamName() == "MatchLevel" && field.Include()) {
            toBeReturned=true;
        }
    });
    return toBeReturned;
};

我希望这能帮助你

function requiresMatchLevel(fields) {
        var ret = false;
        $.each(fields, function (i, field) {
            if (field.OperationParamName() == "MatchLevel" && field.Include()) {
                ret = true;
                return false; // here you need to return false just like break out a loop.
            }
        });
        return ret;
};

使用RETURN yourfunction();

关于活动。