a = a || 20 //语法糖, 简单的if循环简化

194 阅读1分钟

使用语法糖简化简单的if循环代码,

   let a = 3;
   if (a) //if (a !== null && a !== '' && a !== undefined && a !== 0 && a !== false)
   {
        console.log(1111); //打印111
    }

首先if (a)的意思是 if (a !== null && a !== '' && a !== undefined && a !== 0 && a !== false)。当a为null,空字符串或者未定义,或者fales时为假,其余为真。 简化一下:

if (!a) a = 20

a = !a ? 20 : a

如果!a为真,a=20,否则a=a

a = a || 20

或运算,一真即可,如果a为真那么就满足了或运算的条件,代码就不会往下运行,那么a=a,即a=3,否则a=20 同样的:

a = a && 20

于运算,所有的都要为真,首先判断a是否为真,如果为真,继续下面的代码,a=20,如果a为假,与运算就不会往下执行,即a=3;