设置器未返回预期的输出

时间:2019-02-12 00:54:33

标签: javascript class getter-setter setter

我尝试用基本与代码学院完全相同的问题来解决这个问题,但没有任何结果。我正在尝试让我的JavaScript设置器检查我传递的参数是否为数字,如果条件满足,请将其设置为class属性,否则返回错误字符串。

我不明白为什么它不起作用,我已经花了很长时间了,任何帮助将不胜感激!

代码:

=QUERY(FILTER((G2:H100);INDEX((G2:H100);0;2)=H2);"Select Col1")

1 个答案:

答案 0 :(得分:0)

如果要在构造函数内部触发setter函数,则不应在构造函数内部使用后备字段属性(this._age)。删除下划线。 (Source

此外,字符串没有isNan()方法,它像下面的代码一样将变量作为参数。 (Source

如果要使用Javascript ES6类语法的入门指南,则应签出this。谢谢:)

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  get name() {
    return this._name;
  }

  get age() {
    return this._age;
  }

  set age(numeric) {
    if (isNaN(numeric)) {
      console.log('error!')
    } else {
      this._age = numeric
    }
  }

  set name(newName) {
    this._name = newName;
  }
}

let human = new Person('Armand', 'string');
console.log(human);