返回0为整数而不是bool

时间:2012-10-06 14:09:53

标签: javascript

我有一个函数,如果成功,它返回一个整数,但如果没有,它只返回false

这是我的代码的一部分:

    function hellofunc(x) {
//....

        if (returnvalue.length == 1) {
            return returnvalue[0];
        } else if (returnvalue.length > 1) {
            return returnvalue[rx(0, returnvalue.length - 1)];
        } else {
            return false;
        }
    }

当函数调用此函数时 - > return returnvalue[0];它将0作为整数。

但是当我调用hellofunc(something);时,我看到它写入控制台“0”但是当我输入false时它会返回false

JavaScript认为0false?那我该怎么办?我这样做吗?

hellofunc(something)!==false

或者有更好的解决方案吗?

2 个答案:

答案 0 :(得分:3)

hellofunc(something) !== false

正如你所说..没有更好的解决方案.. :)

答案 1 :(得分:1)

在大多数编程语言中,0都是错误的。它来自二进制数字的表示。因为在布尔逻辑中你只有2个选择 - True和False,你只需要一个位来表示它。 1表示True,0表示False。