いくつかのオブジェクトをいくつか実装していますが、追加のプロパティもあります。 私は(ファイルに保存するために)それらをシリアル化するときに、私はすべてのthos追加のプロパティを削除し、インターフェイスに一致するプロパティのみを保持したいと思います。フィルタオブジェクトのプロパティが一致するインターフェイス
特定のインターフェイスに関するオブジェクトを「クリーン」する方法はありますか。 私はオブジェクトのプロパティの完全なリストを取得し、界面特性の完全なリストと比較する
Object.getOwnPropertyNames(myObject)
をしようとしていたが、私は界面特性
のリストを取得する方法を見つけることができません編集:
var object = <IMyInterface>{};
でHow can I create an object based on an interface file definition in TypeScript?
しかし、私はObject.getOwnPropを使用するときに私はそれを見た:私はここに方法を見つけましたertyNames(myObject)、これは定義されたプロパティに対してのみ動作します。プロパティが定義されていない場合、結果には含まれません。定義されたプロパティだけでなく、すべての使用可能なプロパティを取得する方法はありますか?
プロパティの例を投稿できますか? Personオブジェクトの例: –
:名前、姓、年齢、性別。また、IPersonのようなインターフェイスでは、名前、姓、年齢などがあります。 "gender"プロパティを除いてオブジェクトを保存できるようにしたいと考えています。 – Lempkin
インタフェースは実行時に存在しないため、実行できません。できることは、そのインターフェイスのプロパティ名で構成されたインターフェイスごとにリストを作成し、それを実行時に反復することです。 –