javascript - JavaScript 中是否有处理选项(可能返回 null 的东西)的标准方法?

标签 javascript

是否有在 Javascript 中返回“Option”(可能为 null 的对象)的标准方法?

例如,是否有更标准的方法来处理这样的代码,尤其是函数 GetById(userId)

class User {
  static function GetById(userId) {
    if (userId === 'A_GOOD_ID') {
        return new User('GOOD_NAME');
    }
    return null;
  }

  constructor(name) {
    this.name = name;
  }
}

function authenticate(userId) {
  const user = User.GetById(userId);
  if (user) return true;
  return false;
}

最佳答案

这是标准方法,返回 null 比抛出错误更好。

使用该函数时,应检查返回值是否为真:

const result = User.GetById(...);
if (!result) {
  // handle error
}

或者您可以使用简写:

User.GetById(...) || handleError();

许多人认为它的可读性较差。

关于javascript - JavaScript 中是否有处理选项(可能返回 null 的东西)的标准方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56001012/

相关文章:

java - 如何使用 javascript 将对象传递给 Controller

javascript - Greasemonkey 脚本不适用于动态插入的小部件

javascript - 这两种 JavaScript 样式有什么区别?

javascript - 加载任何 url 内容并在 JS 中遵循 XPATH

javascript - FadeIn 没有给出正确的时间

javascript - 如何只清除矩形边框? (JS, Canvas )

javascript - 将pdf文件的二进制内容保存到javascript变量

javascript - 如何有条件地渲染按钮/使用 TypeScript 链接 Next.js 组件

javascript - 用元素和一致的间距填充固定宽度的网格

javascript - 像 gumroad.com 中的 JQuery UI 翻转文本