Wat ik op het eerste zicht (weliswaar zonder testen) aan nadeel van deze methode vind is dat wanneer de eerste kolom van de nieuwe rij, waar hij heen sprint en de else case, niet is ingevuld hij denkt we aan het einde van de reeks waarden zijn, maar ik denk dat dat niet altijd het geval is. Wanneer kolom 1 steeds een waarde heeft, is er geen vuiltje aan de lucht.
De teller heeft die functie. Er wordt per rij in elke kolom gekeken of het leeg is of niet.
Is het aantal lege velden 4 (dus de teller = 4), dan moet de lijn weg, anders niet. Dus daarmee werkt het in principe.
Je kunt er ook een combo van maken. Als je dus bij bepaalde combinaties van kolomen dit script wilt gebruiken. Wat je dan doet, is niet steeds een teller + 1 te doen, maar een verdubbeling.
Dus bij de eerste if else doe je Teller + 1, de volgende Teller +2, de volgender teller + 4, +8, + 16 en net zo lang tot je alle kolomen hebt gedaan.
Als je dan steld, indien teller = 1 Dan is alleen de 1e kolom leeg
Indien teller = 2, is alleen de 2e kolom leeg
Indien teller = 3, is de 1e en 2e kolom leeg
indien teller = 4, is alleen de 3e leeg
Indien teller = 5, dan is de 1e en 3e leeg.
Enzo voort, en zo voor. Op deze manier, kun je de regel dus voor een combinatie van lege vakken opstellen. Voor een bepaald waarde van teller wel verwijderen, en de overige niet.
Dus opzich is deze manier met verandering van de teller een idiaal aan te passen scriptje.
Dit grapje komt van het binear tellen af. Dit is in principe een Ja/nee verhaal. Dus een 0 of een 1.
Binaire getal 0001 => 1
Binaire getal 0010 => 2
Binaire getal 0100 => 4
Binaire getal 1000 => 8
Binaire getal 0001 => 1
Binaire getal 0010 => 2
Binaire getal 0011 => 3
Binaire getal 0100 => 4
Binaire getal 0101 => 5
..........
Binaire getal 0111 => 7
Binaire getal 1000 => 8
.........
Binaire getal 1101 => 13
Binaire getal 1110 => 14
Binaire getal 1111 => 15
Zo kun je dus voor 4 kolomen 16 verschillende situaties defineren. Komt wiskunde toch nog eens vanpas ;-)