配列をシャッフルする方法は以下↓にも書きましたが
https://www.pre-practice.net/2018/02/javascript_18.html
シャッフルしたindexも取得したくてindexArrayを追加しました。
コード.gs
function shuffleIndexAndWords() { var originalWords = ["Practice", "makes", "the", "impossible", "possible"]; var indexArray = []; for(var i = 0; i < originalWords.length; i++) { indexArray.push(i);// [1, 2, 3,…]という配列を作る } var shuffledIndex = shuffle(indexArray);// indexArrayをシャッフルする Logger.log(shuffledIndex); var shuffledWords = []; for(var j = 0; j < indexArray.length; j++) { shuffledWords.push(originalWords[shuffledIndex[j]]);// originalWordsをシャッフルした配列を作る } Logger.log(shuffledWords); } function shuffle(originalWords) { var len = originalWords.length; for(var i = 0; i < 10; i++){// 混ぜる回数を設定する var rand = Math.floor(Math.random() * len); var word0 = originalWords[0]; var wordsRand = originalWords[rand]; originalWords[rand] = word0; originalWords[0] = wordsRand; } var words = originalWords; return words; } |
実行結果
以下のようなログが出力されます。
実行する度に結果は異なります。