let people = [
{ name: "Егор", "Это самец?": true, "Это девушка?": false },
{ name: "Залина", "Это самец?": false, "Это девушка?": true },
];
let questions = [
"Это самец?",
"Это девушка?",
// "Он(а) носит очки?",
// "Он(а) занимаеться спортом?",
// "У этого человека смуглая кожа?",
];
let questionInGame = document.querySelector(".question");
function questFunc() {
let randNum = _.shuffle(_.range(0, questions.length)).slice(0, 1);
questionInGame.innerHTML = questions[randNum];
return questions[randNum];
}
questFunc();
alert(people[`${questFunc()}`]);
randNum
содержит число.questFunc()
возвращает строку с текстом вопроса.people[`${questFunc()}`]
это, например, people["Это девушка?"]
– будет undefined
.people
не имеет строкового ключа. В нём два элемента с индексами 0 и 1.const questions = [
'Это самец?',
'Это девушка?',
'Носит очки?',
'Занимается спортом?',
'У этого человека смуглая кожа?',
];
const people = [
{ name: 'Егор', profile: [1, 0, 1, 1, 1] },
{ name: 'Залина', profile: [0, 1, 1, 1, 0] },
];
const questionElement = document.querySelector('.question');
let questionIndex; // индекс текущего вопроса
function askQustion() {
questionIndex = Math.floor(Math.random() * questions.length);
questionElement.innerHTML = questions[questionIndex];
return questions[questionIndex];
}
askQustion();
// TODO: принять ответ пользователя (true/false)
const answer = true; // допустим, ответил "да"
const candidates = people
.filter(({ profile }) => !!profile[questionIndex] === answer)
.map(({ name }) => name)
.join(', ');
console.log('Кандидаты:', candidates);