У меня есть вариант использования примерно так.
У меня есть база вопросов.
Каждый вопрос относится к одному типу вопроса.
Мне нужно показать вопросный лист (Вопросы перемешать), где вопросы приходят из одного типа за другим.
const question_types = [
{id:1, type:"science"},
{id:2, type:"history"},
{id:3, type:"current affairs"},
{id:4, type:"maths"}
]
const questions = [
{id:1,question:"World War I began in which year?",type:2},
{id:2,question:"Adolf Hitler was born in which country?",type:2},
{id:3,question:"Which general famously stated 'I shall return'?",type:2},
{id:4,question:"The Magna Carta was published by the King of which country? ",type:2},
{id:5,question:"10 + 12? ",type:4},
{id:6,question:"10 - 12? ",type:4},
{id:7,question:"10 + 192? ",type:4},
{id:8,question:"Who is the prime minister of Canada?",type:3},
{id:9,question:"Who is the prime minister of India?",type:3},
{id:10,question:"Who is the prime minister of UK?",type:3},
{id:11,question:"Who is the prime minister of Sri lanka?",type:3},
{id:12,question:"Who is the president of USA?",type:3},
{id:13,question:"Who is the president of France?",type:3},
{id:14,question:"Name the four states in which matter exists.?",type:1},
]
Это примерный набор данных.Здесь у меня есть
- Наука - 1 вопрос,
- Текущие дела - 6 вопросов,
- Математика - 3 вопроса,
- История - 4 вопроса
Я бы, кроме сортировки вопроса по этой схеме
Наука, история, текущие дела, математика, история, текущие дела, математика, история, текущие дела, математика, история, текущиедела, текущие дела, текущие дела
Как мне добиться этого с помощью JavaScript?И если вы спросите, что я сделал до сих пор?
Я повторяю в forEach
и сначала извлекаю ids
.Затем я использую filter
для фильтрации по типу и потерял.