回答編集履歴
1
イテレータの配列化
test
CHANGED
@@ -1,8 +1,12 @@
|
|
1
|
+
### Fisher-Yates シャッフル
|
2
|
+
|
3
|
+
|
4
|
+
|
1
5
|
インデックス値は確定情報なので、シャッフルが良いのではないかと。
|
2
6
|
|
3
7
|
|
4
8
|
|
5
|
-
1. Array.prototype.keys
|
9
|
+
1. [Array.prototype.keys()](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/keys) + [Array.from()](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/from) or [Object.keys()](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object/keys)
|
6
10
|
|
7
11
|
2. Fisher-Yatesアルゴリズムでシャッフル
|
8
12
|
|
@@ -10,4 +14,18 @@
|
|
10
14
|
|
11
15
|
|
12
16
|
|
17
|
+
- Array.prototype.keys() はイテレータを返すので、配列に変換する必要があります。また、イテレータ故に `[1,2,,4]` のような欠番要素を読み飛ばしてくれません。
|
18
|
+
|
19
|
+
- Object.keys() は配列の欠番を読み飛ばします。
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
### 更新履歴
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
- 2019/02/16 11:42 イテレータの配列化処理が抜けていたので、Array.from() と Object.keys() を追記しました
|
28
|
+
|
29
|
+
|
30
|
+
|
13
31
|
Re: williamsArk さん
|