1.只有get 没有set的属性为readonly属性
2.新版本TS(4.3以后)不再要求set 和get的参数类型相同。

class Thing {
 _size = 0;
 get size(): number {
 return this._size;
 }
 set size(value: string | number | boolean) {
 let num = Number(value);
 // Don't allow NaN, Infinity, etc
 if (!Number.isFinite(num)) {
 this._size = 0;
 return;
 }
 this._size = num;
 }
}
let thing: Thing = new Thing();
      thing.size = 9988;
      alert(thing.size);