単純なオブジェクトを作るときに、こんなのやりたかったんです。
class Person { constructor( public name: string = '', public age: number) {}}var obj = new Person(name: 'hoge'); console.log(obj.name);
でも、名前付き引数はTypeScriptでサポートされてないみたいですね。名前付き引数がほしい時はこんな感じにするみたいです。
class Person { name: string; age: number; constructor(params: { name?: string, age?: number }) {this.name = params.name || ''; this.age = params.age || 0; }}var obj = new Person({ name: 'okazuki'}); console.log(obj.name); console.log(obj.age);
ちょっとめんどいですねぇ。コンストラクタで引数と一緒にプロパティを定義しつつ名前付き引数で初期値を決めて変えたいところだけ差し替えるみたいな使い方がしたいと思うなどした。