回答編集履歴

1

質問に即して回答

2018/09/26 08:39

投稿

maisumakun
maisumakun

スコア145184

test CHANGED
@@ -7,3 +7,19 @@
7
7
 
8
8
 
9
9
  イテレータである必要はありません。
10
+
11
+
12
+
13
+ > Symbol.iteratorプロパティとは何をしているのか?
14
+
15
+
16
+
17
+ `.toString()`が文字列を返すように、`[Symbol.iterator]()`メソッドはイテレーターを返します。後付でJavaScriptを拡張したので普通の名前ではないのですが、`Symbol.iterator`は**メソッドの名前**と考えてください。
18
+
19
+
20
+
21
+ > イテレータとiterableには, どのような関係があるのか?
22
+
23
+
24
+
25
+ `[Symbol.iterator]()`メソッドを実行すればイテレーターを返すオブジェクトが`iterable`です。`Array`を筆頭に、`iterable`**そのもの**はイテレータでなくて構いません。