Analiza e alternimit të X dhe O
Në këtë mësim dua t'ju tregoj se si të bëni alternimin e X dhe O në një rresht. Me shumë gjasa, keni bërë diçka të tillë:
function start(cells) {
let i = 0; // vlera fillestare e numëruesit
for (let cell of cells) {
cell.addEventListener('click', function() {
if (i % 2 == 0) {
this.textContent = 'X';
} else {
this.textContent = '0';
}
i++; // rrisim numëruesin
});
}
}
Unë do të sugjeroj ta zgjidhim detyrën më shkurt. Le të bëjmë
një grup të 'lojtarëve' tanë:
let gamers = ['X', 'O'];
Siç mund ta shihni, në këtë grup X ka
çelësin 0, dhe O - çelësin 1. E
njëjta gjë mund të thuhet për i % 2
- për X pjesa e mbetur do të jetë 0, ndërsa
për O - 1.
Kjo do të thotë që kjo gjë mund të përdoret në vend të çelësit:
let gamers = ['X', 'O'];
let key = i % 2;
console.log(gamers[key]);
Ose edhe më shkurt:
let gamers = ['X', 'O'];
console.log(gamers[i % 2]);
Ose edhe më shkurt:
console.log(['X', 'O'][i % 2]);
Tani le të thjeshtojmë kodin e funksionit tonë start:
function start(cells) {
let i = 0;
for (let cell of cells) {
cell.addEventListener('click', function() {
this.textContent = ['X', 'O'][i % 2];
i++;
});
}
}
Në mënyrë të pavarur, pa parë në kodin tim, bëni ndryshimin e përshkruar.
Tani në çdo qelizë mund të bëhet një numër i pakufizuar klikimesh, duke ndryshuar, për shembull, X në O. Korrigjojeni këtë.