首页  >  文章  >  web前端  >  永远不要使用 if-else。用这个代替

永远不要使用 if-else。用这个代替

Barbara Streisand
Barbara Streisand原创
2024-10-26 12:56:02871浏览

Don’t ever use if-else. Use this instead

让我们来谈谈一个编码技巧,它可以让你的代码更容易阅读并保持事物井井有条:提前返回。

许多程序员依赖 if-else 语句来检查不同的条件,但将它们堆叠起来可能会变得混乱。相反,早期返回让我们预先处理所有错误情况,这样我们就可以为函数结束保存理想的场景。

例子

这是一个检查用户是否可以获得折扣的函数:

function getDiscountMessage(user) {
  if (user.isActive) {
    if (user.hasDiscount) {
      return `Discount applied for ${user.name}!`;
    } else {
      return `${user.name} does not qualify for a discount.`;
    }
  } else {
    return `User ${user.name} is inactive.`;
  }
}

这段代码充满了嵌套的 if-else 语句。 ?

相反,我们可以首先通过提前返回来覆盖错误情况,然后在最后关注“完美场景”:

function getDiscountMessage(user) {
  if (!user.isActive) {
    return `User ${user.name} is inactive.`;
  }

  if (!user.hasDiscount) {
    return `${user.name} does not qualify for a discount.`;
  }

  // Perfect scenario: user is active and qualifies for a discount
  return `Discount applied for ${user.name}!`;
}

每个错误情况都在开头的一行中处理。这使我们的代码保持简洁明了,无需遵循不同嵌套级别的所有 if-else 块。

所以下次,跳过 if-else 并尝试提前返回。 ?

以上是永远不要使用 if-else。用这个代替的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn