简单的答案
判断值是否为null,undefined,0,false,"",NaN:
if ( value )
or
if ( !!value )
对于否定条件:
if ( !value )
仅测试null 或undefined:
if ( value == null )
更简洁的答案
1- 如果值 不是,它将评估为 true:null、undefined、NaN、@987654335 @、0、false
如果值为null,undefined,NaN,empty string,0,或false,将进入else条件。
if ( value ) {
console.log('value is something different from 0, "", false, NaN, null, undefined');
} else {
console.log('value is 0, "", false, NaN, null or undefined');
}
if ( !!value ) {
console.log('value is something different from 0, "", false, NaN, null, undefined');
} else {
console.log('value is 0, "", false, NaN, null or undefined');
}
2-如果你想要一个否定条件,那么你需要使用:
if ( !value ) {
console.log('value is 0, "", false, NaN, null or undefined');
} else {
console.log('value is something different from 0, "", false, NaN, null, undefined');
}
3- 会判断值是null还是undefined
if ( value == null ) {
console.log('is null or undefined');
} else {
console.log('it isnt null neither undefined');
}
4- 使用布尔条件不起作用。
如果值为 null、undefined、0、empty string、@ 987654353@
这两个条件总是会转到 else 条件。
如果 value 是布尔变量,则例外。
if ( value==true ) {
} else {
}
if ( value==false ) {
} else {
}