エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
【javascript】配列のシャッフル2 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
【javascript】配列のシャッフル2 - Qiita
//要素の入れ替え関数 const swap = (a,i,j) => ( [a[i], a[j]] = [a[j], a[i]], a ); //reduceの内部処... //要素の入れ替え関数 const swap = (a,i,j) => ( [a[i], a[j]] = [a[j], a[i]], a ); //reduceの内部処理 const reducer = (p,_,i,$,m=p.length-i) => swap(p, m-1, Math.floor(Math.random() * m)); //本体 const shuffleArray = arr => arr.reduce(reducer, arr.slice()); console.log(shuffleArray( [...Array(15).keys()]) ); const shuffleArray = arr => arr.reduce((p,_,i,$,m=p.length-i,r=Math.floor(Math.random()*m--)) => ([p[m], p[r