2017-03-27 6 views
1

Immutable Mapにいくつかのエントリがあります。一部のエントリを破棄して、新しいマップを作成するにはどうすればよいですか?ImmutableJSに戻り値を格納しない方法

すべてのデータ

headers = ['title', 'url', 'layout', 'modules', 'enabled', 'captcha', 'updated_at', 'contents', 'username', 'excerpt', 'settings'];

予想データ

headers = ['title', 'url', 'enabled', 'updated_at', 'contents', 'username', 'excerpt'];

コード私が持っている

columnHeaders = keys.map((key) => { 
     if (skipHeaders.includes(key)) { 
     return null; 
     } 
     return key; 
    }); 

これは、上記コードの結果:

headers = ['title', 'url', null, null, 'enabled', null, 'updated_at', 'contents', 'username', 'excerpt', null]; 

答えて

1

使用filter代わりにmap

columnHeaders = keys.filter((key) => !skipHeaders.includes(key)); 

filter、不変によって提供されるように、新しいコレクションを返すであろう不変動作でありますフィルタ関数を通過したときに真理値を返さない元のコレクションの値を除外

関連する問題