teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

質問の追記に対して回答追記

2020/08/31 02:08

投稿

miyabi_pudding
miyabi_pudding

スコア9559

answer CHANGED
@@ -1,3 +1,20 @@
1
+ > 比較するとすれば for of の方が適切ですね。
2
+
3
+ の追記に対しての回答を追記いたします。
4
+
5
+ 考え方は同様です。
6
+
7
+ `for of`は、とかく途中で止める止めないに関わらず、
8
+ **ブロック内で様々な処理を行うことができる**ため、より柔軟な実装が可能でしょう。
9
+ 対して、`some`メソッドは、**必ず論理値を返す**という(コールバック内で`return`させなくとも)仕様のため、
10
+ 論理値を必要とする場面に使用すべきです。
11
+
12
+ つまり、結局は、
13
+ メリット云々ではなく、
14
+ **そのメソッドの役割や仕様**を考え使うことが、重要ということです。
15
+
16
+ -------- 以下元回答 --------
17
+
1
18
  > またネットにもsomeを使うべきという記事があったのですが
2
19
 
3
20
  その記事をよくご覧になってください。

1

記事の内容をよく理解すべき旨を記載

2020/08/31 02:08

投稿

miyabi_pudding
miyabi_pudding

スコア9559

answer CHANGED
@@ -1,7 +1,10 @@
1
1
  > またネットにもsomeを使うべきという記事があったのですが
2
2
 
3
- その記事の下のコメントもよくご覧になってください。
3
+ その記事よくご覧になってください。
4
+ **途中でループを抜けたい時がある場合は`for`より`some`の方が・・・**的な内容です。
4
- 役割の違いだの意見が多く書かれています。
5
+ (そして、`for``forEach`はとも似てるが別物)
6
+ 確かに、それであれば、**some**メソッドを使う理由になってもいいかと思います。
7
+ が、質問者さんの観点での(メリット云々)基準で考えるのは間違っていると思います。
5
8
 
6
9
  **役割の違い**であって、**どちらかを使えばいい**ということでは**ありません**。
7
10
  **可読性**云々の話でもないと、私は思います。