Javascript 检查null不工作的条件语句
我有一个名为Javascript 检查null不工作的条件语句,javascript,reactjs,if-statement,null,Javascript,Reactjs,If Statement,Null,我有一个名为header的变量,它是null,typeof header显示string。但是,它不满足以下任何条件: const header=request.request?request.request.headers.authorization:request.connection.context.authorization if(header=''|| header==null | | header==undefined | | header==false | | header==0
header
的变量,它是null
,typeof header
显示string
。但是,它不满足以下任何条件:
const header=request.request?request.request.headers.authorization:request.connection.context.authorization
if(header=''|| header==null | | header==undefined | | header==false | | header==0 | | header==NaN |!!header){
console.log(“满足条件”)
}
似乎没有更多的方法来限定
null
。发生了什么事?如果它的类型是字符串,并且它包含null
,那么它就是字符串'null'
。加:
if (header === 'null' || ...
如果它的typeof
是string
,并且它包含null
,那么它就是字符串'null'
。加:
if (header === 'null' || ...
事实上,这不是真的——他在代码中的任何地方都没有使用typeofsample@kinduser在OP的帖子中,他说,typeof header
在帖子的第一句话中显示了string
。@kinduser不在代码示例中。他说他运行了typeof header
,它是string
@MikeAbeln,但它仍然没有任何意义,header变量只是来自可能异步请求的一些响应,为什么他甚至会提到typeof it返回一个字符串,即使他希望它是布尔值或数字…那不是真的,事实上,他在代码中的任何地方都没有使用typeofsample@kinduser在OP的帖子中,他说,typeof header
在帖子的第一句话中显示了string
。@kinduser不在代码示例中。他说他运行了typeof header
,它是string
@MikeAbeln,但它仍然没有任何意义,header变量只是来自可能异步请求的一些响应,为什么他甚至会提到typeof it返回一个字符串,即使他希望它是布尔值或数字……而且使用==
(严格检查)作为等于运算符,而不是==
(松散检查)。此外,最好使用===
(严格检查)作为等于运算符,而不是=
(松散检查)。