回答編集履歴
2
追記
answer
CHANGED
@@ -16,4 +16,5 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
なお、これをシャッフルとして使うことはお勧めできません。
|
19
|
-
[Array#sort実装のshuffleは偏る - Qiita](https://qiita.com/minodisk/items/94b6287468d0e165f6d9)
|
19
|
+
[Array#sort実装のshuffleは偏る - Qiita](https://qiita.com/minodisk/items/94b6287468d0e165f6d9)
|
20
|
+
[JavaScript の質問です。 http://qiita.com/minodisk@github/ite… - 人力検索はてな](https://q.hatena.ne.jp/)
|
1
質問を読み違えたようなので訂正
answer
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
-
「Math.random()」でググってはいかがでしょうか。
|
1
|
+
~~「Math.random()」でググってはいかがでしょうか。~~
|
2
2
|
|
3
|
-
[Math.random() - Google 検索](https://www.google.com/search?q=Math.random%28%29)
|
3
|
+
~~[Math.random() - Google 検索](https://www.google.com/search?q=Math.random%28%29)~~
|
4
|
+
|
5
|
+
|
6
|
+
# 質問を読み違えたようなので訂正
|
7
|
+
|
8
|
+
Math.random() は[0,1)の乱数を返します。
|
9
|
+
なので、0.5を引くと[-0.5,0.5)の乱数になります。
|
10
|
+
|
11
|
+
一方で、sortの比較関数は引数を2つ取り、戻り値が負の時に第1引数を前と判断し、正の時に第2引数を前と判断します。
|
12
|
+
なので、でたらめな基準でソートされることになります。
|
13
|
+
|
14
|
+
参考:
|
15
|
+
[Array.prototype.sort() - JavaScript | MDN](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)
|
16
|
+
|
17
|
+
|
18
|
+
なお、これをシャッフルとして使うことはお勧めできません。
|
19
|
+
[Array#sort実装のshuffleは偏る - Qiita](https://qiita.com/minodisk/items/94b6287468d0e165f6d9)
|