回答編集履歴
2
サンプルコードの改善
    
        answer	
    CHANGED
    
    | @@ -1,5 +1,5 @@ | |
| 1 | 
            -
            lodashのメリットはchainでつなげての遅延評価(v3以降)だと思います。
         | 
| 1 | 
            +
            lodashのメリットはchainでつなげての遅延評価(v3以降)による最適化処理だと思います。
         | 
| 2 | 
            -
            今回はfindで絞っているし、sortは特性上 | 
| 2 | 
            +
            今回はfindで絞っているし、sortはその特性上、流れが切られるので最適化の対象とならないですが^^
         | 
| 3 3 | 
             
            lodashを使うなら、chain(遅延評価)を使うことをお勧めします。
         | 
| 4 4 |  | 
| 5 5 | 
             
            ```js
         | 
| @@ -27,4 +27,19 @@ | |
| 27 27 | 
             
            		return _.sortBy( users, 'name' );
         | 
| 28 28 | 
             
            	}
         | 
| 29 29 |  | 
| 30 | 
            +
            ```
         | 
| 31 | 
            +
             | 
| 32 | 
            +
            追記です。
         | 
| 33 | 
            +
            「非破壊的な方法で変更したい」というのを見逃していたので修正版も。
         | 
| 34 | 
            +
            ```js
         | 
| 35 | 
            +
            const userChange = (id, point, profile)=> {
         | 
| 36 | 
            +
            		return _.chain( users )
         | 
| 37 | 
            +
            			.cloneDeep() //複製
         | 
| 38 | 
            +
            			.tap( users => {
         | 
| 39 | 
            +
            				//強引に中間操作・・・
         | 
| 40 | 
            +
            				_.chain(users).find( {id:id} ).assign( { point: point, profile: profile } ).commit();
         | 
| 41 | 
            +
            			})
         | 
| 42 | 
            +
            			.sortBy('name')
         | 
| 43 | 
            +
            			.value();
         | 
| 44 | 
            +
            	}
         | 
| 30 45 | 
             
            ```
         | 
1
誤字修正
    
        answer	
    CHANGED
    
    | @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            lodashのメリットはchainでつなげての遅延評価(v3以降)だと思います。
         | 
| 2 | 
            -
            今回はfindで絞っているし、sortは特性上streamが切 | 
| 2 | 
            +
            今回はfindで絞っているし、sortは特性上streamが切られるので遅延評価の対象とならないですが^^
         | 
| 3 | 
            -
            lodashを使うなら、chainを使うことをお勧めします。
         | 
| 3 | 
            +
            lodashを使うなら、chain(遅延評価)を使うことをお勧めします。
         | 
| 4 4 |  | 
| 5 5 | 
             
            ```js
         | 
| 6 6 | 
             
            var userChange = (id, point, profile)=> {
         | 
