Почему вы не используете только массивы?
questions = [
[
"some question", //question
[2,4,6], //resultsToRemoveIfAnswer1
[1, 3, 5] //resultsToRemoveIfAnswer2
],
[
"another question",
[5, 6],
[1, 2, 3, 4]
],
...
]
, тогда в questions
элементах вы можете получить доступ к ключу question
в качестве индекса 0, resultsToRemoveIfAnswer1
в качестве индекса 1, resultsToRemoveIfAnswer2
как индекс 2.
Если вы не хотите полагаться на бессмысленные числовые индексы, объявляйте константы и используйте их
resultsToRemoveIfAnswer1 = 1
questions[0][resultsToRemoveIfAnswer1]
Более OO-ориентированный образец:
function Questionary(){
const question = 0
const resultsToRemoveIfAnswer1 = 1
const resultsToRemoveIfAnswer2 = 2
this.questions = [
[
"some question",
[2,4,6],
[1, 3, 5]
],
[
"another question",
[5, 6],
[1, 2, 3, 4]
],
...
];
this.currentQuestion = 0;
}
//method example
Questionary.prototype.skipQuestion = function() {
return ++this.currentQuestion;
}
и вы можете пойти глубже, добавив Question
Объект с text
, resultsToRemoveIfAnswer1
, resultsToRemoveIfAnswer2
и т. Д. *