Кхе-кхе...
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
// Предметная область
// Основы CSS
const questions = [
'Многоцелевое свойство, которое определяет, как элемент должен быть показан в документе, называется?',
'Свойство которое, устанавливает способ позиционирования элемента относительно окна браузера или других объектов на веб-странице, называется?',
'Свойство которое, определяет цвет текста элемента, называется?',
'Свойство которое, устанавливает величину отступа от каждого края элемента, называется?',
'Свойство, предназначенное для отображения или скрытия элемента, включая рамку вокруг него и фон, называется?'
];
let scoreW = 0,
scoreL = 0;
console.log(
`Тестировщик знаний.
Тема: Основы CSS.`
);
rl.on('close', function() {
console.log(`Правильные ответы:${scoreW} Неправильные ответы:${scoreL}`);
});
rl.question('Для старта нажмите Enter', () => {
rl.question(questions[0], say => {
say == 'display' || say == 'Display' ? scoreW++ : scoreL++;
rl.question(questions[1], say => {
say == 'display' || say == 'Display' ? scoreW++ : scoreL++;
rl.question(questions[2], say => {
say == 'display' || say == 'Display' ? scoreW++ : scoreL++;
rl.question(questions[3], say => {
say == 'display' || say == 'Display' ? scoreW++ : scoreL++;
rl.question(questions[4], say => {
say == 'display' || say == 'Display' ? scoreW++ : scoreL++;
rl.close();
});
});
});
});
});
});
Ну, или...
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
// Предметная область
// Основы CSS
const questions = [
'Многоцелевое свойство, которое определяет, как элемент должен быть показан в документе, называется?',
'Свойство которое, устанавливает способ позиционирования элемента относительно окна браузера или других объектов на веб-странице, называется?',
'Свойство которое, определяет цвет текста элемента, называется?',
'Свойство которое, устанавливает величину отступа от каждого края элемента, называется?',
'Свойство, предназначенное для отображения или скрытия элемента, включая рамку вокруг него и фон, называется?'
];
var answers = ['display', 'dfdf', 'dfdf', 'dfdf', 'dfdf'];
let scoreW = 0,
scoreL = 0;
console.log(
`Тестировщик знаний.
Тема: Основы CSS.`
);
rl.on('close', function() {
console.log(`Правильные ответы:${scoreW} Неправильные ответы:${scoreL}`);
});
goQuest();
async function goQuest() {
for(var i=0; i<questions.length; i++) {
var res = await foo(questions[i], answers[i]);
if(res == 1) scoreW++;
else scoreL++;
}
rl.close();
}
function foo(q, a) {
return new Promise( function(resolve, reject) {
rl.question(q, say => {
say.toLowerCase() == a ? resolve(1) : resolve(0);
});
});
}