なぜ return arr; がないと選択肢が表示されないのでしょうか?

shuffle 関数の return の値がなくなってしまい、shuffledChoices が空の状態になってしまうからです。
2021年6月24日
ユーザー
function shuffle(arr){
for(let i = arr.length-1; i>0; i--){
const j = Math.floor(Math.random()*(i+1));
[arr[j],arr[i]] = arr[i],arr[j]];
}

return arr;
}

return arr; を消すと選択肢が表示されなくなります。
こちらのコードの return arr; の動きについて教えてください。

for の中で i > 0 と定義しているので、i0 より小さくなった場合に処理を止めるという認識であっていますでしょうか?

let i = arr.length-1; i>0; i-- で数を後ろから 1 つずつ減らしていくと定義しているので、return arr; がなくても最初に選択肢は表示されて、シャッフルする対象が 0 になった時に表示がされなくなると思ったのですが、なぜ return arr; がないと選択肢が表示されないのでしょうか。

ご回答宜しくお願い致します。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?

このレッスンの質問と回答(4)