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

回答編集履歴

2

追記

2020/07/30 04:54

投稿

Lhankor_Mhy
Lhankor_Mhy

スコア37488

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

質問を読み違えたようなので訂正

2020/07/30 04:54

投稿

Lhankor_Mhy
Lhankor_Mhy

スコア37488

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)