Hrestik we noligiň çalşygyny derňew
Bu sapakda men size hrestik we noligiň çalşygyny bir setirde nädip ýerine ýetirip bolýandygyny görkezmek isleýärin. Siz bellem bolsa, şuna meňzeş bir zat ýasadyňyz:
function start(cells) {
let i = 0; // sanaýjynyň başlangyç bahasy
for (let cell of cells) {
cell.addEventListener('click', function() {
if (i % 2 == 0) {
this.textContent = 'X';
} else {
this.textContent = '0';
}
i++; // sanaýjyny köpeltmek
});
}
}
Men meseläni gysga ýoldan çözmegi hödürleýärin. Öz 'oýunçylarymyzyň' massiwini ýasaýalyň:
let gamers = ['X', 'O'];
Görşüňiz ýaly, bu massiwde hrestigiň açary 0, noligiňki bolsa 1. Şol bir zat
i % 2 üçin hem aýdylar
- hrestik üçin galyndy 0, nolik
üçin bolsa - 1 bolar.
Ýagny bu zady açaryň ýerine ulanyp bolýar:
let gamers = ['X', 'O'];
let key = i % 2;
console.log(gamers[key]);
Ýa-da hasam gysga:
let gamers = ['X', 'O'];
console.log(gamers[i % 2]);
Ýa-da ýene hasam gysga:
console.log(['X', 'O'][i % 2]);
Indi bizim start funksiýamyzyň koduny ýönekeýleşdireliň:
function start(cells) {
let i = 0;
for (let cell of cells) {
cell.addEventListener('click', function() {
this.textContent = ['X', 'O'][i % 2];
i++;
});
}
}
Özbaşdak, meniň koduma seretmezden, görkezilen üýtgeşmeleri giriziň.
Häzirlikde islendik öýjüge çäksiz mukdarda klik etmek mümkin, mysal üçin, hrestigi nolige üýtgetmek. Muny düzgünleşdiriň.