Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将0作为整数而不是布尔返回_Javascript - Fatal编程技术网

Javascript 将0作为整数而不是布尔返回

Javascript 将0作为整数而不是布尔返回,javascript,Javascript,我有一个函数,如果成功,它将返回一个整数,如果不成功,它将返回false 以下是我的部分代码: function hellofunc(x) { //.... if (returnvalue.length == 1) { return returnvalue[0]; } else if (returnvalue.length > 1) { return returnvalue[rx(0, returnv

我有一个函数,如果成功,它将返回一个整数,如果不成功,它将返回
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;
        }
    }
函数调用此函数时->
返回返回值[0]
它将
0
作为一个整数

但是当我打电话给hellofunc(某物)我看到它写入控制台“0”,但当我键入false时,它返回
false

JavaScript认为
0
false
?那我在这里做什么呢?我要这样做吗

hellofunc(something)!==false
还是有更好的解决办法

hellofunc(something) !== false
正如你所说……没有更好的解决办法……)


正如您所说,没有更好的解决方案:)

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

在大多数编程语言中,0表示False。它来自于二进制数字的表示。因为在布尔逻辑中只有两个选择-真和假,所以只需要一个位来表示它。1表示真,0表示假。

returnvalue
数组中是否有数字,如果有,您希望如何将这些数字解释为布尔值?哪些数字应该以
true
结束,哪些应该以
false
结束?是的,JavaScript认为
0
false
或人们所说的“false”。任何值都可以替换为布尔条件。其他“falsey”值包括
null
未定义的
NaN
。我不确定函数的功能,但最佳实践建议函数应始终返回相同的数据类型。如果成功时返回整数,则失败时的典型返回值为负。例如:return-1 ;;参见String.indexOf(str);作为一个很好的例子,
returnvalue
数组中是否有数字,如果有,您希望如何将这些数字解释为布尔值?哪些数字应该以
true
结束,哪些应该以
false
结束?是的,JavaScript认为
0
false
或人们所说的“false”。任何值都可以替换为布尔条件。其他“falsey”值包括
null
未定义的
NaN
。我不确定函数的功能,但最佳实践建议函数应始终返回相同的数据类型。如果成功时返回整数,则失败时的典型返回值为负。例如:return-1 ;;参见String.indexOf(str);作为一个很好的例子。。。