Как создать и заполнить массив (ключ + значение) с массивом внутри
Всем привет, я новичок в JS, кто нибудь помогите понять как задать массив и за тем заполнить его ключ/значение. Вот по такому примеру
const questions = [
{
questionText: 'What is the capital of France?',
answerOptions: [
{ answerText: 'New York', isCorrect: false },
{ answerText: 'London', isCorrect: false },
{ answerText: 'Paris', isCorrect: true },
{ answerText: 'Dublin', isCorrect: false },
],
},
{
questionText: 'Who is CEO of Tesla?',
answerOptions: [
{ answerText: 'Jeff Bezos', isCorrect: false },
{ answerText: 'Elon Musk', isCorrect: true },
{ answerText: 'Bill Gates', isCorrect: false },
{ answerText: 'Tony Stark', isCorrect: false },
],
},
{
questionText: 'The iPhone was created by which company?',
answerOptions: [
{ answerText: 'Apple', isCorrect: true },
{ answerText: 'Intel', isCorrect: false },
{ answerText: 'Amazon', isCorrect: false },
{ answerText: 'Microsoft', isCorrect: false },
],
}
]
Я рылся в учебниках но никак не могу понять, как привести массив в такой json вид, что ли, помогите пожалуйста. Я хочу именно чтобы я мог это создать и заполнить, с произвольным количеством вопросов конечно, всем спасибо большое!
Ответы (1 шт):
Автор решения: Алексей Шилло
→ Ссылка
Массив ты уже создал, а чтобы добавить к нему новое значение по образцу можно сделать следующее:
- Создать класс Question;
- Создавать объект класса Question и запушить его в массив questions.
См. код ниже:
let questions = [];
class Question {
constructor(questionText, answerOptions){
this.questionText = questionText
this.answerOptions = answerOptions
}
}
questions.push(
new Question(
"What's up, Doc?",
[
{answerText: 'Good', isCorrect: false},
{answerText: 'Fine', isCorrect: false},
{answerText: 'Bad', isCorrect: true}
]
)
)
console.log(questions)
Можно развить решение, если дашь более точные требования.