【问题标题】:Class Declaration - Custom Error Messages类声明 - 自定义错误消息
【发布时间】:2020-06-15 01:59:27
【问题描述】:

我正在尝试在 JS 中创建一个自定义类,我必须在其中限制传递给该类的参数。基本上,我想创建一个抛出错误的类,除非传递给该类的参数是“foo”、“bar”或“foobar”。我已经尝试阅读文档,但对 JavaScript 很陌生,但对 JS 是全新的,我无法理解它。

谁能帮忙?

【问题讨论】:

    标签: javascript class oop


    【解决方案1】:

    在您的 class constructor 方法中进行检查应该很容易,其中包含在不遵守类要求时抛出错误的条件:

    class MyClass {
      constructor(arg) {
        const acceptableArgs = ['foo', 'bar', 'foobar'];
        if (!acceptableArgs.includes(arg)) {
          throw new Error('MyClass instance must be declared with "foo", "bar", or "foobar"!');
        }
        this.arg = arg;
      }
      sayHello() {
        console.log(`Hi my arg is ${this.arg}`);
      }
    }
    
    const works = new MyClass('foo');
    works.sayHello();
    
    const doesnotwork = new MyClass('uhoh');
    doesnotwork.sayHello();

    【讨论】:

    • 没问题,欢迎来到本站。如果您对提问有任何疑问,可以随时查看How to Ask。如果此答案令人满意,请将其标记为“已接受”,以便找到此帖子的其他用户知道此方法也可能适用于他们。祝你好运,编码愉快!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 2016-09-03
    • 2021-10-28
    • 1970-01-01
    • 1970-01-01
    • 2015-09-21
    相关资源
    最近更新 更多