回答編集履歴
3
テキスト修正
test
CHANGED
@@ -216,7 +216,7 @@
|
|
216
216
|
|
217
217
|
```
|
218
218
|
|
219
|
-
ただ、上記だと、コード行数が増えますので、行数を減らそうとして`return`なしのアロー関数で書こうとすると、どこかで`reList` に `push` しなければならないので、違和感のあるとお感じの現状にならざるを得ないです。このように、アローの先の`return`を書かずにすむ行数の少ないコードを取るか、読んで違和感のよりないコードを採るか、という選択が互いにトレードオフに
|
219
|
+
ただ、上記だと、コード行数が増えますので、行数を減らそうとして`return`なしのアロー関数で書こうとすると、どこかで`reList` に `push` しなければならないので、違和感のあるとお感じの現状にならざるを得ないです。このように、アローの先の`return`を書かずにすむ行数の少ないコードを取るか、読んで違和感のより少ないコードを採るか、という選択が互いにトレードオフになることは、ままあります。(ちなみに、業務でそのような二者の選択があったら、読みやすいほうを私は採ります。)
|
220
220
|
|
221
221
|
|
222
222
|
|
2
テキスト修正
test
CHANGED
@@ -167,3 +167,67 @@
|
|
167
167
|
|
168
168
|
|
169
169
|
以上、参考になれば幸いです。
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
### 追記
|
176
|
+
|
177
|
+
|
178
|
+
|
179
|
+
全体的な修正案ではなく、ご質問のコードの問題の部分
|
180
|
+
|
181
|
+
```javascript
|
182
|
+
|
183
|
+
key => /^room/.test(key) && x[key] === "102" && reList.push({"keyno":x.keyno ,"room":key,"room_no":x[key]})
|
184
|
+
|
185
|
+
```
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
についての本題である、
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
> someの条件部にpushを書いているのが、違和感がありまして。。
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
との違和感を無くすこと**のみ**に目的を限って、この部分への局所的な修正案を挙げますと、上記を以下のようにすれば、その違和感は多少減るのではと思います。
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
```javascript
|
202
|
+
|
203
|
+
key => {
|
204
|
+
|
205
|
+
if (/^room/.test(key) && x[key] === "102") {
|
206
|
+
|
207
|
+
reList.push( { "keyno":x.keyno ,"room":key,"room_no":x[key] } );
|
208
|
+
|
209
|
+
return true;
|
210
|
+
|
211
|
+
}
|
212
|
+
|
213
|
+
return false;
|
214
|
+
|
215
|
+
}
|
216
|
+
|
217
|
+
```
|
218
|
+
|
219
|
+
ただ、上記だと、コード行数が増えますので、行数を減らそうとして`return`なしのアロー関数で書こうとすると、どこかで`reList` に `push` しなければならないので、違和感のあるとお感じの現状にならざるを得ないです。このように、アローの先の`return`を書かずにすむ行数の少ないコードを取るか、読んで違和感のよりないコードを採るか、という選択が互いにトレードオフにになることは、ままあります。(ちなみに、業務でこの二者の選択があったら、読みやすいほうを私は採ります。)
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
コード全体の見直しに関しては、この回答の冒頭に挙げた
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
- 1. some を使いつつ見通しをよくする。
|
228
|
+
|
229
|
+
- 2. keys から別のデータ構造を作り、そこから結果を得る
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
や、他の回答者様からも有用な知見やコードが提示されていますので、そちらを参考にされるとよいかと思います。
|
1
テキスト修正
test
CHANGED
@@ -104,7 +104,7 @@
|
|
104
104
|
|
105
105
|
|
106
106
|
|
107
|
-
他の回答者様からも、keys から別のデータ構造を作る案がすでに提示されていますが、以下もそれらと同様に、別のデータ構造を得たうえで、そこから結果を得るようにたものです。以下では、キーと値が
|
107
|
+
他の回答者様からも、keys から別のデータ構造を作る案がすでに提示されていますが、以下もそれらと同様に、別のデータ構造を得たうえで、そこから結果を得るようにしたものです。以下では、キーと値が
|
108
108
|
|
109
109
|
|
110
110
|
|
@@ -114,9 +114,7 @@
|
|
114
114
|
|
115
115
|
```
|
116
116
|
|
117
|
-
|
118
|
-
|
119
|
-
|
117
|
+
という形のエントリを全部屋分持った [Map](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Map)を作って、そこから結果を得ます。
|
120
118
|
|
121
119
|
|
122
120
|
|