遇到下列代码goHome && (await router.replace(PageEnum.BASE_HOME));
&&
这个逻辑与的作用是,当goHome
为true时,执行右边的代码,否则就不会执行右边的代码
async function f(flag=false){
flag && console.log('hi')
console.log('hello')
}(f());
上面的代码执行结果为:hello
当修改flag为true
后:
async function f(flag=false){
flag && console.log('hi')
console.log('hello')
}(f(true));
执行结果为:hi hello
还有这样的代码:const paramId = id || userStore.getUserInfo?.userId;
逻辑或||
表示当id
为true
时返回id的值,否则返回右边表达式计算的结果
下列Demo:
let n :number = 2-2 || 9-2
console.log(n) // 7
let m :number = 3+2 || 2+3
console.log(m) // 5