вопросы пишите мне в телеграмм +375298176892
можно скачать офлайн версию сайта: code.mu old.code.mu

Активация ячеек в игре найди число на JavaScript

В предыдущем уроке вы должны были сделать так, чтобы наша функция build возвращала массив ячеек таблицы:

let cells = build(field, prepare(2)); console.log(cells);

Давайте возьмем этот массив, переберем его циклом и активируем каждую ячейку. Под активацией я понимаю то, что каждая ячейка будет принимать красный фон при клике на нее.

Однако, по правилам игры активироваться должна только та ячейка, номер который следующий по порядку. Это нам нужно будет предусмотреть.

Вынесем код для активации в отдельную функцию:

let size = 2; let cells = build(field, prepare(size)); activate(cells);

Для начала давайте в этой функции сделаем простую активацию ячеек:

finction activate(cells) { for (let cell of cells) { cell.addEventListener('click', function() { this.classList.add('active'); }); } }

А теперь учтем то, что активировать ячейки можно только по порядку. Для этого введем счетчик, который будет хранить число, соответствующее той ячейки, которую сейчас можно активировать:

finction activate(cells) { let counter = 1; // счетчик for (let cell of cells) { cell.addEventListener('click', function() { this.classList.add('active'); }); } }

Дальнейший алгоритм действий будет следующим: если при клике на ячейку ее текст совпадает со счетчиком - значит активируем ее и увеличиваем счетчик на 1. А если не совпадает - не акивируем.

Допишите реализацию описанной функции activate.