let flag1 = null || undefined; let flag2 = null && undefined; if (flag1 === true) console.log('flag1'); if (flag2 === false) console.log('flag2');
flag1
flag2
flag1、flag2
什么都不会输出
对于 || 来说,如果条件判断结果为 true 就返回第一个操作数的值,如果为 false 就返回第二个操作数的值。 && 则相反,如果条件判断结果为 true 就返回第二个操作数的值,如果为 false 就返回第一个操作数的值。 || 和 && 返回它们其中一个操作数的值,而非条件判断的结果。 所以flag1是undefined,flag2是null。
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题