! 和 !!的用法,侧重说明!!的使用

egg:

! 的简单用法

!null = true
!undefined = true
!'' = true
!100 = false
!'abc' = false
var a;
if (a != null && typeof(a) != undefined && a != '') {
    console.log('a有内容才会执行代码')
}

等价于:

if (!!a) {
    console.log('a有内容才会执行代码')
}

以上是网上资源,以下是自己遇到的情况

var a;

console.log(a && 5>3)  // undefined

if (a && 5>3) {
    console.log('a有值时才执行')
}

console.log(!!a && 5>3)  // false

if (!!a && 5>3) {
    console.log('a有值时才执行')
}

a 有值才执行,个人认为不够严谨,应该写 !!a

if 条件判断时 false、0、’’、NaN、null和undefined会被转换为false,
所以 a 有值才执行一样是没有问题的。

猜你喜欢

转载自blog.csdn.net/jinchenxinglaiy/article/details/106504732