我经常在函数的开头声明几个变量,并希望将函数执行的结果写入其中,但在此之前,请检查函数是否返回了结果
const a = myfuncA()
const b = myfuncB()
const c = myfuncC()
if(a){
if(b){
if(c){
Code...
}
else{
funcErr(c)
}
}
else{
funcErr(b)
}
}else{
funcErr(a)
}
条件运算符"quot;已经允许您缩短代码,但不返回条件,并且该函数必须执行3次
const a = (myfuncA()) ? myfuncA() : funcErr(myfuncA())
const b = (myfuncB()) ? myfuncB() : funcErr(myfuncB())
const c = (myfuncC()) ? myfuncC() : funcErr(myfuncC())
当然,显而易见的是,我可以编写自己的函数,我将把正在调查的函数传递给它,并在出错的情况下回调操作
myIfFync(a,collback){
if (a){
return a
}
collback(a)
}
const a = myIfFunc(myfuncA(),funcErr)
const b = myIfFunc(myfuncB(),funcErr)
const c = myIfFunc(myfuncC(),funcErr)
在我看来,js有一个用于这些目的的内置方法,但我不知道它是
您可以按如下方式使用&&
。如果结果是真的,函数将执行。
const a = myfuncA()
const b = myfuncB()
const c = myfuncC()
a && funcErr(a)
b && funcErr(b)
c && funcErr(c)