Skip to content
On this page

减少 setter 属性的使用

倾向于使用更精确的 set/get 函数(如 setBar, getBar),减少使用 setter/getter

考虑以下代码:

ts
foo.bar = {
  a: 123,
  b: 456
};

存在 setter/getter 时:

ts
class Foo {
  a: number;
  b: number;
  set bar(value: { a: number; b: number }) {
    this.a = value.a;
    this.b = value.b;
  }
}

let foo = new Foo();

这并不是 setter 的一个好的使用场景,当开发人员阅读第一段代码时,不知道将要更改的所有内容的上下文。然而,当开发者使用 foo.setBar(value),他可能会意识到在 foo 里可能会引起一些改变。

减少 setter 属性的使用 has loaded