⊗jsPrCndTD 53 of 62 menu

Абмеркаванне рэалізацыі календара на JavaScript

Наш календар уяўляе сабой табліцу з лікамі ад 1 да апошняга дня месяца. Праблема ў тым, што лікі ў табліцы ў першым радзе павінны ісці не з першай ячэйкі.

Гэта ўвогуле відавочна. Не відавочна з якой менавіта ячэйкі трэба пачынаць. Давайце абдумаем.

Няхай тыдзень пачынаецца з панядзелка, і ён нулявы дзень. У гэтым выпадку нумар дня тыдня першага ліку месяца адпавядае колькасці пустых ячыек перад ім. Напрыклад, чацвер будзе мець нумар 3 і перад ім будзе 3 пустых ячэйкі.

Аналагічная праблема нас будзе чакаць у канцы табліцы. Там таксама трэба пакідаць пустыя ячэйкі пасля апошняга ліку месяца. У гэтым выпадку колькасць пустых ячыек будзе роўная шасцёрцы, ад якой трэба адняць нумар дня тыдня апошняга дня месяца.

Падумаем цяпер, як мы будзем фармаваць нашу табліцу. Відавочна, што зручней за ўсё мець двухмерны масіў, у кожным падмасіве якога будзе па 7 элементаў (= колькасці дзён у тыдні). Пры гэтым у першым і апошнім падмасівах частка элементаў павінны быць пустымі.

Алгарытм дзеянняў

Зробім функцыю, якая будзе рабіць масіў лікаў ад 1 да апошняга дня месяца. Затым зробім функцыю, якая дадасць у пачатак масіва неабходную колькасць пустых элементаў. Аналагічная функцыя павінна дадаваць пустыя элементы ў канец масіва.

Пасля гэтага ў нас атрымаецца аднамерны масіў з колькасцю элементаў, кратных 7. Ператворым гэты масіў у двухмерны па 7 элементаў у падмасіве.

Затым возьмем гэты двухмерны масіў, перабярэм цыкламі і сфармуем нашу табліцу.

Гэты алгарытм дзеянняў мы паэтапна будзем выконваць у наступных уроках.

Беларуская
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 для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць