⊗jsPrCndTD 53 of 62 menu

Razprava o implementaciji koledarja v JavaScriptu

Naš koledar je tabela s številkami od 1 do zadnjega dne v mesecu. Težava je v tem, da številke v tabeli v prvi vrstici ne smejo začeti s prve celice.

Na splošno je to očitno. Ni očitno, iz katere točno celice je treba začeti. Pomislimo.

Recimo, da se teden začne v ponedeljek, in to je ničelni dan. V tem primeru številka dneva v tednu prvega dne v mesecu ustreza številu praznih celic pred njim. Na primer, četrtek bo imel številko 3 in pred njim bo 3 praznih celic.

Podobna težava nas čaka na koncu tabele. Tam prav tako moramo pustiti prazne celice za zadnjo številko meseca. V tem primeru bo število praznih celic enako šest, od katere je treba odšteti številko dneva v tednu zadnjega dne v mesecu.

Pomislimo zdaj, kako bomo oblikovali našo tabelo. Očitno je najprimerneje imeti dvodimenzionalno polje, v vsakem podpolju katerega bo po 7 elementov (= število dni v tednu). Pri tem morajo biti v prvem in zadnjem podpolju nekateri elementi prazni.

Algoritem dejanj

Naredimo funkcijo, ki bo naredila polje števil od 1 do zadnjega dne v mesecu. Nato naredimo funkcijo, ki bo na začetek polja dodala potrebno število praznih elementov. Podobna funkcija naj dodaja prazne elemente na konec polja.

Po tem bomo dobili enodimenzionalno polje s številom elementov, večkratnikom 7. Pretvorimo to polje v dvodimenzionalno po 7 elementov v podpolju.

Nato vzemimo to dvodimenzionalno polje, ga preletimo z zankami in oblikujemo našo tabelo.

Ta algoritem dejanj bomo izvajali po korakih v naslednjih lekcijah.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni