繁体   English   中英

将 function 结果分配给变量

[英]Assign function result to variable

我有这个 function:

function validateVip(){ 
    $("table[id=table-pss] tbody tr").each(function() {
        var keval = $(this.cells[4]).find('input');
        var data = $(keval[0]).val();
        console.log("result: " + data);
        console.log(data.includes([vip]));
        var x;                      
        if ((data.includes([vip])) == true)
        {
            x = "yay";
            console.log("Vip Exists");                          
        }
        else
        {
            x = "nay";
            console.log("No VIP");
        }                       
        return x;
  });
}

每当我调用它时,它总是返回“未定义”。 这是我如何调用 function validateVip

var isVip = validateVip();
            console.log("is vip:" + isVip);

有人可以告诉我我做错了什么吗?

谢谢你。

x 的值由传递给$().each的回调返回,它什么也不做

你需要在上面的scope中定义变量x

function validateVip() {
    var x;
    $("table[id=table-pss] tbody tr").each(function() {
        var keval = $(this.cells[4]).find('input');
        var data = $(keval[0]).val();
        console.log("result: " + data);
        console.log(data.includes([vip]));

        if ((data.includes([vip])) == true) {
            x = "yay";
            console.log("Vip Exists");
        } else {
            x = "nay";
            console.log("No VIP");
        }
    });
    return x;
}

请注意, x将等于最后一个项目分配,使用each

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM