TypescriptでメソッドをEnumerableにする@Enumerableデコレーターを実装する

1 min read読了の目安(約300字
function enumerable(
  target: any,
  propertyKey: string,
  descriptor: PropertyDescriptor,
) {
  descriptor.enumerable = true;
};

class A {
  @enumerable
  a() {
    return 'a';
  }

  b() {
    return 'b';
  }
}

const a = new A();

for (const key in a) {
  console.log(key);
}

結果

> a