⊗jsPrCndTD 53 of 62 menu

Bespreking van die implementasie van 'n kalender in JavaScript

Ons kalender is 'n tabel met getalle van 1 tot die laaste dag van die maand. Die probleem is dat die getalle in die tabel in die eerste ry nie vanaf die eerste sel moet begin nie.

Dit is in die algemeen duidelik. Wat nie duidelik is nie, is vanaf watter sel presies om te begin. Kom ons dink daaroor na.

Laat die week begin op Maandag, en dit is dag nul. In hierdie geval stem die dag van die week van die eerste dag van die maand ooreen met die aantal leë selle daarvoor. Byvoorbeeld, Donderdag sal dag nommer 3 hê en daarvoor sal daar 3 leë selle wees.

'n Soortgelyke probleem sal ons aan die einde van die tabel wag. Daar sal ons ook leë selle moet laat na die laaste getal van die maand. In hierdie geval sal die aantal leë selle gelyk wees aan ses, waarvan ons die dag van die week van die laaste dag van die maand moet aftrek.

Kom ons dink nou na oor hoe ons ons tabel sal vorm. Dit is duidelik dat die handigste is om 'n tweedimensionele skikking te hê, waar elke subskikking 7 elemente sal hê (= die hoeveelheid dae in 'n week). Terselfdertyd sal 'n deel van die elemente in die eerste en laaste subskikkings leeg wees.

Algoritme van aksies

Kom ons maak 'n funksie wat 'n skikking sal maak van getalle van 1 tot die laaste dag van die maand. Dan maak ons 'n funksie wat die nodige aantal leë elemente aan die begin van die skikking sal byvoeg. 'n Soortgelyke funksie moet leë elemente aan die einde van die skikking byvoeg.

Hierna sal ons 'n eendimensionele skikking hê met 'n aantal elemente, veelvoudig van 7. Ons sal hierdie skikking omskep in 'n tweedimensionele een met 7 elemente in elke subskikking.

Dan neem ons hierdie tweedimensionele skikking, deurloop dit met lusse en vorm ons tabel.

Ons sal hierdie algoritme van aksies stap vir stap uitvoer in die volgende lesse.

Afrikaans
Azə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
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp