[JS] Labels in javascript

Pagina: 1
Acties:

  • yetti4
  • Registratie: Juni 2007
  • Laatst online: 23-03-2018
In mijn programma (javascript) heb ik 5 voorwaarden. Er zijn ook 5 stukjes code in mijn function dat wat berekenen. Het is de bedoeling dat bij elke voorwaarde de function in een andere volgorde wordt uitgevoerd. Bijvoorbeeld:
voorwaarde 1: 1-2-3-4-5
voorwaarde2: 3-5-1-2-4

Heeft iemand enig idee of het uit te voeren valt. _/-\o_

  • Janoz
  • Registratie: Oktober 2000
  • Nu online

Janoz

Moderator Devschuur®

!litemod

Maak van elke 'voorwaarde' een aparte functie en roep ze in de benodigde volgorde aan.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Verwijderd

Het is me niet helemaal duidelijk wat je bedoeld, maar ik krijg de indruk dat je 5 stukken code hebt, waarvan de volgorde van executie afhankelijk is van een parameter.

Je kan je parameter direct de volgorde laten aangeven: "12345", waar je met een loop doorheen gaat en telkens de eerste letter "eraf haalt", dus:
code:
1
2
3
4
- eerst code-blok-1 uitvoeren, er is nog "2345" over, herhaal
- code-blok-2, "345" over
...
- code-blok-5 uitvoeren, parameter "leeg", stop executie.


Je kan ook bijvoorbeeld voor iedere "voorwaarde" (whatever that may be) een losse functie maken, bijvoorbeeld: function voorwaardeX(), waarin je de vijf codeblokken gewoon aanroept:
code:
1
2
3
4
5
6
7
function voorwaardeX(){
blok1();
blok3();
blok2();
blok5();
blok4();
}

  • yetti4
  • Registratie: Juni 2007
  • Laatst online: 23-03-2018
Je kan ook bijvoorbeeld voor iedere "voorwaarde" (whatever that may be) een losse functie maken, bijvoorbeeld: function voorwaardeX(), waarin je de vijf codeblokken gewoon aanroept:
code:
1
2
3
4
5
6
7
function voorwaardeX(){
blok1();
blok3();
blok2();
blok5();
blok4();
}
Ja, dat had ik eerst, als resultaat dat ik rond 600 regels code heb, waardoor het heel onoverzichtelijk wordt, en je als je een stukje code wilt veranderen, moet je het in 5 plaatsen doen.

Hoe roep je fuctie in een andere functie? Gewoon myfunction()

  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 00:18

Gonadan

Admin Beeld & Geluid, Harde Waren
yetti4 schreef op maandag 25 juni 2007 @ 10:40:
[...]


Ja, dat had ik eerst, als resultaat dat ik rond 600 regels code heb, waardoor het heel onoverzichtelijk wordt, en je als je een stukje code wilt veranderen, moet je het in 5 plaatsen doen.

Hoe roep je fuctie in een andere functie? Gewoon myfunction()
Uhm als je had wat hij bedoelt dan hoef je het niet op vijf plaatsen aan te pakken.
Wat hij bedoelt is dat je de vijf stukjes code elk in een eigen functie stopt.
En die vijf functies roep je dan aan in de functies die je maakt voor je voorwaarden.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function voorwaardeA() {
  codeA();
  codeB();
  codeC();
  codeD();
  codeE();
}

function voorwaardeB() {
  codeA();
  codeE();
  codeB();
  codeD();
  codeC();
}

function codeA() {
  bla
}

function codeB() {
  anderebla
}
enz


En je kunt natuurlijk ook de voorwaarde als parameter meegeven en een switch gebruiken.
Vind ik persoonlijk netter. :)

[ Voor 6% gewijzigd door Gonadan op 25-06-2007 10:45 ]

Look for the signal in your life, not the noise.

Canon R6 | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


  • user109731
  • Registratie: Maart 2004
  • Niet online
Ik zou zoiets doen:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var voorwaardeA = [doA, doB, doC];
var voorwaardeB = [doB, doC, doA];
    
function doA() { alert('a'); }
function doB() { alert('b'); }
function doC() { alert('c'); }

function doIt (voorwaarde) {
    for(var i=0; i<voorwaarde.length; i++) {
        voorwaarde[i]();
    }
}
doIt(voorwaardeA);
doIt(voorwaardeB);

:)

  • yetti4
  • Registratie: Juni 2007
  • Laatst online: 23-03-2018
Ja het is me gelukt, hartstikke bedankt voor jullie hulp.

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 01:41

MueR

Admin Devschuur® & Discord

is niet lief

Post ook de oplossing!
Als je probleem is opgelost, kom dan terug om de oplossing te posten. Dan hebben er meer mensen profijt van in de toekomst. Die search is er ook in dit opzicht niet voor niets. ;)
Hoe dan? Misschien kan je er nog iemand mee helpen.

[ Voor 11% gewijzigd door MueR op 25-06-2007 14:17 ]

Anyone who gets in between me and my morning coffee should be insecure.


  • g4wx3
  • Registratie: April 2007
  • Laatst online: 12-10 08:33
volgens mij heeft die het opgelost zoals JanDM beschrijft

http://www.softfocus.be/


Verwijderd

als je trouwens labels in javascript wilt gebruiken is dat in theorie wel mogelijk, maar ik geloof dat de implementatie ervan nogal zuigt tussen browsers onderling. Tenminste, er zijn ergens bij mij wat hersencellen als "javascript" "labels" "suckyducky" verbonden, maar het hoe en waarom weet ik echt niet. Heb het zelf overigens nooit toegepast.

http://www.devguru.com/technologies/javascript/11481.asp
Pagina: 1