ES6中用&&与||来简化if{}else{}写法

1.if{}else{}写法

const o = {v: 100};
if (o) {
    console.log('有值:' + v.o)
} else {
    console.log('无值')
}

如果传入的对象为非空,则打印对象的属性值;否者无输出值。

2.ES6中用&&与||用法

const o = {v: 100};
const t = o && o.v; // 100

const b = false;
const t1 = b || '100'; // 100

a() && b()

如果执行a()后返回true,则执行b()并返回b的值;如果执行a()后返回false,则整个表达式返回a()的值,b()不执行;

a() || b()

如果执行a()后返回true,则整个表达式返回a()的值,b()不执行;如果执行a()后返回false,则执行b()并返回b()的值;

a() && b() || c()

如果执行a()后返回true,则执行b()并返回b的值,不执行c();如果执行a()后返回false,则执行c()并返回c()的值;

&& 优先级高于 ||;

posted @ 2020-04-29 09:52  寒爵  阅读(3772)  评论(1编辑  收藏  举报