Как сделать, чтобы этот JavaScript показывал случайные посты по метке?

Я пытаюсь разобраться, как сделать так, чтобы мой JavaScript показывал случайные посты по определенной метке. Я слышал про функцию Math.random(), но не совсем понимаю, как ее правильно использовать в моем коде. Вот мой текущий скрипт:

function ОтобразитьПроекты(данные) {
  for (let i = 0; i < данные.лента.записи.length; i++) {
    let заголовок = данные.лента.записи[i].заголовок.$t;
    let миниатюра = данные.лента.записи[i].медиа$миниатюра.url;
    let ссылка;
    
    for (let j = 0; j < данные.лента.записи[i].ссылки.length; j++) {
      if (данные.лента.записи[i].ссылки[j].rel == 'альтернативная') {
        ссылка = данные.лента.записи[i].ссылки[j].href;
        break;
      }
    }

    let блокПроекта = '<div class="проект"><a href="' + ссылка + '"><img alt="' + заголовок + '" src="' + миниатюра + '"/><h4>' + заголовок + '</h4></a></div>';
    document.write(блокПроекта);
  }
}

Как мне изменить этот код, чтобы он показывал посты в случайном порядке? Буду благодарен за помощь!

Попробуй перемешать записи алгоритмом Fisher-Yates. Создай массив индексов, перемешай его с Math.random() и выводи записи по новому порядку. Такой метод гарантирует случайный показ постов. Как думаешь, сработает?

слушай, я тут недавно столкнулся с похожей задачей. в итоге решил просто создать массив из всех постов, а потом перемешивать его через sort() с Math.random(). типа так:

let посты = данные.лента.записи;
посты.sort(() => Math.random() - 0.5);

и потом уже в цикле выводить эти перемешанные посты. получается довольно просто и работает норм. может и тебе подойдет такой вариант? попробуй, если что - пиши, разберемся)

Чувак, а почему бы не использовать метод splice() для рандомного выбора постов? Можно сделать так:

let посты = данные.лента.записи;
let случайныеПосты = [];
while (посты.length > 0) {
  let индекс = Math.floor(Math.random() * посты.length);
  случайныеПосты.push(посты.splice(индекс, 1)[0]);
}

Потом просто итерируешься по случайныеПосты и выводишь их. Так ты получишь реально случайный порядок без повторений. Проверено на практике, работает как часы!