我的请求中的参数是false,但它没有被检测为false ...我的代码如下所示:
router.post('/leave', (req, res) => {
const myBooleanValue = req.body.myBooleanValue
console.log(myBooleanValue) // This prints out 0
if (!myBooleanValue) {
// This bit never gets called
}
})
如您所见,myBooleanValue
为0
,表示错误。但是,if子句的内部代码永远不会被调用,因为它没有将其检测为false。我还尝试了if (myBooleanValue === 0) {}
和if (myBooleanValue === false) {}
。但这并不奏效。请帮忙吗?
答案 0 :(得分:3)
我猜测myBooleanValue
的类型是字符串,而不是数字。 !"0" === false
。你可以输入强制if (!(+myBooleanValue))
答案 1 :(得分:0)
首先确保它不会以文字//noinspection GradleCompatible
的形式返回。如果它以文字形式返回而不是通过
'0'