手记

千万不要用 if-else,试试这个方法更清爽

让我们来谈谈一个让代码更易读并保持条理的编码小技巧,这样可以使用早退。

许多开发者依赖于 if-else 语句来检查不同的条件,但嵌套过多会使代码变得混乱。相反,早返回让我们可以在函数开头提前处理可能出现的所有错误,从而把理想的执行路径留到函数的最后。

例如

这里有一个功能用来检查用户是否能享受折扣。

    function getDiscountMessage(user) {
      if (user.isActive) {
        if (user.hasDiscount) {
          return `${user.name}已经享受了折扣。`;
        } else {
          return `${user.name}没有资格享受折扣。`;
        }
      } else {
        return `用户${user.name}目前未激活。`;
      }
    }

进入全屏 退出全屏

这段代码里到处都是嵌套的if-else语句,真的恶心。🤮

相反,我们可以先用提前返回处理错误,然后再处理理想的正常流程。

    function getDiscountMessage(user) {
      if (!user.isActive) {
        return `用户 ${user.name} 当前不活跃。`;
      }

      if (!user.hasDiscount) {
        return `${user.name} 不符合折扣资格。`;
      }

      // 完美情况是:用户是活跃的,并且符合折扣条件
      return `已为 ${user.name} 应用折扣!`;
    }

可以进入全屏,也可以退出全屏。

每个错误情况都在一开始就用一行代码处理。这样可以让代码更加整洁明了,而不需要处理各种嵌套的 if-else 语句。

下次直接用返回值,省去 if-else 试试看。😎

0人推荐
随时随地看视频
慕课网APP