⊗jsPrTTTCTAA 44 of 62 menu

Крестик менен ноликтин алмашуусун талдоо

Бул сабакта мен сизге крестик менен ноликтин алмашуусун бир сап код менен кантип жасай тургандыгын көрсөткүм келет. Сиз чыгысында, мындай нерсе жасагансыз:

function start(cells) { let i = 0; // баштапкы мааниси for (let cell of cells) { cell.addEventListener('click', function() { if (i % 2 == 0) { this.textContent = 'X'; } else { this.textContent = '0'; } i++; // эсептегичти көбөйтөбүз }); } }

Мен маселени кыскараак чечүүнү сунуштайм. Өзүбүздүн 'оюнчулар' массивибизди жасайлы:

let gamers = ['X', 'O'];

Көрүп тургандай, бул массивде крестиктин ачкычы 0, ал эми ноликтики - ачкычы 1. Ошол эле нерсени i % 2 үчүн да айтууга болот - крестик үчүн калдык 0 болот, ал эми нолик үчүн - 1.

Демек, бул нерсени ачкычтын ордуна колдонсо болот:

let gamers = ['X', 'O']; let key = i % 2; console.log(gamers[key]);

Же дагы кыскараак:

let gamers = ['X', 'O']; console.log(gamers[i % 2]);

Же дагы кыскараак:

console.log(['X', 'O'][i % 2]);

Эми start функциябыздын кодун жөнөкөйлөтөлү:

function start(cells) { let i = 0; for (let cell of cells) { cell.addEventListener('click', function() { this.textContent = ['X', 'O'][i % 2]; i++; }); } }

Өз алдынча, менин кодумга карабастан, сүрөттөлгөн оңдоону киргизиңиз.

Азыр каалаган уячага чексиз сандага чыкылдатуу жасап, мисалы, крестикти ноликке өзгөртсө болот. Муну оңдоп.

Кыргызча
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어LietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу