回答編集履歴
2
サンプルコードの改善
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
lodashのメリットはchainでつなげての遅延評価(v3以降)だと思います。
|
1
|
+
lodashのメリットはchainでつなげての遅延評価(v3以降)による最適化処理だと思います。
|
2
2
|
|
3
|
-
今回はfindで絞っているし、sortは特性上
|
3
|
+
今回はfindで絞っているし、sortはその特性上、流れが切られるので最適化の対象とならないですが^^
|
4
4
|
|
5
5
|
lodashを使うなら、chain(遅延評価)を使うことをお勧めします。
|
6
6
|
|
@@ -57,3 +57,33 @@
|
|
57
57
|
|
58
58
|
|
59
59
|
```
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
追記です。
|
64
|
+
|
65
|
+
「非破壊的な方法で変更したい」というのを見逃していたので修正版も。
|
66
|
+
|
67
|
+
```js
|
68
|
+
|
69
|
+
const userChange = (id, point, profile)=> {
|
70
|
+
|
71
|
+
return _.chain( users )
|
72
|
+
|
73
|
+
.cloneDeep() //複製
|
74
|
+
|
75
|
+
.tap( users => {
|
76
|
+
|
77
|
+
//強引に中間操作・・・
|
78
|
+
|
79
|
+
_.chain(users).find( {id:id} ).assign( { point: point, profile: profile } ).commit();
|
80
|
+
|
81
|
+
})
|
82
|
+
|
83
|
+
.sortBy('name')
|
84
|
+
|
85
|
+
.value();
|
86
|
+
|
87
|
+
}
|
88
|
+
|
89
|
+
```
|
1
誤字修正
test
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
lodashのメリットはchainでつなげての遅延評価(v3以降)だと思います。
|
2
2
|
|
3
|
-
今回はfindで絞っているし、sortは特性上streamが切
|
3
|
+
今回はfindで絞っているし、sortは特性上streamが切られるので遅延評価の対象とならないですが^^
|
4
4
|
|
5
|
-
lodashを使うなら、chainを使うことをお勧めします。
|
5
|
+
lodashを使うなら、chain(遅延評価)を使うことをお勧めします。
|
6
6
|
|
7
7
|
|
8
8
|
|