スプレッド演算子をつけたらうまく動かなくなりました

2020年4月14日
ユーザー
const shuffledChoices = shuffle([...quizSet[currentNum].c]);

こちらのコードですが、[...]をつける前はランダムに変換されるのですが、
つけた途端に、テキスト表示とコンソール表示どちらも変化がなくなります。
ご回答の方よろしくお願い致します。

↓が全文です

'use strict';

const question = document.querySelector('#question');
const choices = document.querySelector('#choices');
const btn = document.querySelector('#btn');

const quizSet = [
    {q: 'What is A?', c: ['A0', 'A1', 'A2']},
    {q: 'What is B?', c: ['B0', 'B1', 'B2']},
    {q: 'What is C?', c: ['C0', 'C1', 'C2']},
];

let currentNum = 0;

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;
}


const shuffledChoices = shuffle([...quizSet[currentNum].c]);
console.log(quizSet[currentNum].c);


question.textContent = quizSet[currentNum].q

quizSet[currentNum].c.forEach(choice => {
    let li = document.createElement('li');
    li.textContent = choice;
    choices.appendChild(li);
});

この回答を見るにはプレミアムサービスへの登録が必要です

プレミアムサービスとは?