Может ли кто-нибудь помочь мне отладить мою игру в крестики-нолики?

Я делаю игру в крестики-нолики, используя html, css и javascript. Мне удалось добиться некоторого прогресса в этом, но есть две ошибки, которые я не смог выяснить, сколько бы я ни искал.

Во-первых, он не будет принимать входные данные в последнем блоке (9). После того, как я добавил код для проверки выигрышей и ничьих, он больше не работал.

Во-вторых, ИИ начинает играть со второго моего хода, а не с первого. Должно быть, это простая логическая ошибка, но я просто не вижу ее.

Вот мой код на repl.it: https://repl.it/@julkothegu1/Да

Спасибо.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
0
82
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Проблема в том, что вы используете индекс массива в качестве значения для своего идентификатора. Однако подсчет массива начинается с 0, а ваш идентификатор начинается с 1.

Это приводит к тому, что при первом воспроизведении компьютер пытается воспроизвести с идентификатором «0», который не существует.

И когда вы нажимаете на последний элемент, также происходит несоответствие между идентификатором и индексом.

Чтобы решить обе проблемы, начните свой счетчик идентификаторов с 0 в своем HTML.

Похоже, что вопрос не по теме а также, вызванный опечаткой. Лучше пометить о закрытии вместо того, чтобы отвечать — такого рода вопросы не имеют ценности для будущих читателей.

Snow 30.05.2019 05:43
Ответ принят как подходящий

Вы столкнулись с проблемой на основе 0 против 1. Просто измените свой HTML на это:

<table>
    <tr>
        <td class='block' id='0'></td>
        <td class='block' id='1'></td>
        <td class='block' id='2'></td>
    </tr>
    <tr>
        <td class='block' id='3'></td>
        <td class='block' id='4'></td>
        <td class='block' id='5'></td>
    </tr>
    <tr>
        <td class='block' id='6'></td>
        <td class='block' id='7'></td>
        <td class='block' id='8'></td>
    </tr>
</table>

Похоже, что вопрос не по теме а также, вызванный опечаткой. Лучше пометить о закрытии вместо того, чтобы отвечать — такого рода вопросы не имеют ценности для будущих читателей.

Snow 30.05.2019 05:43

Казалось, что этот человек просто пытался получить помощь в решении своей проблемы... Я не согласен. Это был их первый вопрос, который они тоже задали, поэтому подумали, что это дерьмо, что все проголосовали против них. Покажите немного любви.

sturdynut 30.05.2019 05:53

См. Стоит ли консультировать по вопросам не по теме? (нет) и Стоит ли отвечать на вопросы, причиной которых является опечатка? (нет). Stack Overflow — это не справочная служба — это хранилище вопросов и ответов полезный, которых нет в этом посте. Вопрос объективно не по теме, по крайней мере, в двух отношениях - безусловно, это заслуживает отрицательного голоса.

Snow 30.05.2019 06:30

Большое спасибо. Не могу поверить, что пропустил что-то настолько простое. Я не знал, что мой вопрос считается не по теме. Если бы у меня была та же проблема, и я нашел бы такой ответ, я бы определенно нашел его полезным, хотя и простым. Я не вижу проблемы в том, чтобы отвечать на простые вопросы на сайте, который якобы создан для помощи. Я думаю, есть такая вещь, как глупый вопрос...

Julk 30.05.2019 06:57

Другие вопросы по теме