2016-11-25 18 views
0

私は2つの間で変換するためのヘルパーメソッドと一緒に、二つのクラスMyObjectMyObjectJSONを持っている:myObj.toJSON()MyObject.fromJSON()活字:: Lodash ::高速検索のための配列<->オブジェクト

ここでは、上記のクラスのうち2つのコンストラクトを変換する必要があります。

  1. idに等しいキーを持つMyObjectインスタンスのマップ:{ [id: number]: MyObject }
  2. MyObjectJSONインスタンスのリスト:私はこれらの2つの構築物の間で変換することができますどのようMyObjectJSON[]

?私はlodashを使用しています。

答えて

0
let mapA: { [id: number]: MyObject } = {}; 
mapA[obj1.id] = obj1; 
mapA[obj2.id] = obj2; 
mapA[obj3.id] = obj3; 
// { 
// 1: MyObject, 
// 2: MyObject, 
// 3: MyObject 
// } 

let mapB: { [id: number]: MyObjectJSON }; 
mapB = lodash.mapValues<MyObject, MyObjectJSON>(mapA, it => it.toJSON()); 
// { 
// 1: MyObjectJSON, 
// 2: MyObjectJSON, 
// 3: MyObjectJSON 
// } 

let listB: MyObjectJSON[]; 
listB = lodash.map<MyObject, MyObjectJSON>(mapA, it => it.toJSON()); 
// [ MyObjectJSON, MyObjectJSON, MyObjectJSON ] 
関連する問題