我正在与一位同事讨论一个更一般的编程问题,我很好奇社区对此有何评论;
让我们采用这样的 Typescript 函数:
hasValue(param: string, checkValue: string): boolean {
const value = this.url.searchParams.get(param);
return value && value === checkValue;
}
我希望在其他地方调用的函数中的返回值和逻辑运算可以首先评估为真,然后为假,如果 value === checkValue 的结果不为真;因此,调用函数会首先得到 true,然后得到 false,这会破坏程序流程。
我希望这样处理(在伪代码中,因为我更熟悉 Java):
if (value === checkValue)
{return value}
else {
break;
}
这样就没有条件在调用函数时返回语句可以先返回真,然后返回假;在异步调用中,这可能会出现问题,因为从我的角度来看,当 Return-Statement 为真时可能会执行进一步的回调函数,然后评估为假。
由于函数返回两个值,我还认为这可能会破坏程序流程,以防其中一个为假,而预期为真,反之亦然。
社区怎么看?