为什么不将var与“text”工作进行比较?

时间:2012-10-17 13:46:50

标签: javascript if-statement

我在Javascript中发了ifelse语句,但我无法让它工作。

这是我的代码,我希望你们会看到什么是错的

var int = "";
function fbLoop (userLoop)
{
    int=setInterval(function(){fbCheckloop(userLoop)},1000);
}

function fbCheckloop(userCheck)
{
    if(userCheck.login != 'false')
    {
        window.clearInterval(int);
        console.log(userCheck);
        fbUpload(userCheck);
    }
    else
    {
        $.get("uploadtofb.php", {functie: "checklogin", fotonaam: userCheck.fotonaam}, fbCheckloop);
    }
}


if(userCheck.login != 'false')不起作用。
console.log(userCheck);显示了这一点 {"login":"false","fotonaam":"NAME"}
因此,根据控制台日志,他必须执行else,但他执行if语句。

我做错了什么?

userCheck来自于此:

return json_encode($checklog = array( 'login' => 'false', 'fotonaam' => $_GET['fotonaam'] ));

2 个答案:

答案 0 :(得分:3)

您确定userCheck是JavaScript对象,而不是必须解析的JSON字符串吗?您当前的控制台日志结果让我怀疑它是。 console.log(typeof userCheck)会产生什么?

如果是,请使用

userCheck = JSON.parse(userCheck)

答案 1 :(得分:0)

如果userCheck.login具有布尔值false,请使用if(userCheck.login != false)

false周围无需引号。