Tic Tac Toe
const squares = document.querySelectorAll('.square');
let currentPlayer = 'X';
for (let i = 0; i < squares.length; i++) {
squares[i].addEventListener('click', function() {
if (this.textContent === '') {
this.textContent = currentPlayer;
checkForWinner();
switchPlayer();
}
});
}
function switchPlayer() {
currentPlayer = currentPlayer === 'X' ? 'O' : 'X';
}
function checkForWinner() {
const winningCombinations = [ [0, 1, 2],
[3, 4, 5],
[6, 7, 8],
[0, 3, 6],
[1, 4, 7],
[2, 5, 8],
[0, 4, 8],
[2, 4, 6]
];
for (let i = 0; i < winningCombinations.length; i++) {
const [a, b, c] = winningCombinations[i];
if (
squares[a].textContent === currentPlayer &&
squares[b].textContent === currentPlayer &&
squares[c].textContent === currentPlayer
) {
alert(`Player ${currentPlayer} wins!`);
resetBoard();
return;
}
}
let draw = true;
for (let i = 0; i < squares.length; i++) {
if (squares[i].textContent === '') {
draw = false;
break;
}
}
if (draw) {
alert('Draw!');
resetBoard();
}
}
function resetBoard() {
for (let i = 0; i < squares.length; i++) {
squares[i].textContent = '';
}
currentPlayer = 'X';
}