Avatar billede googolplex Novice
27. oktober 2003 - 18:12 Der er 14 kommentarer og
1 løsning

Else eller ej

Jeg har ofte set følgende:

if (something)
{
    return $something / eller die()/exit()
}
else
{
    do something else
}

Men hvorfor overhovedet bruge 'else' i dette tilfælde, er følgende ikke bedre:

if (somthing)
{
    return $something / eller die()/exit()
}

do something else

Jeg undrer mig bare over hvad der er mest korrekt/pænest :)
Avatar billede roenving Novice
27. oktober 2003 - 18:14 #1
Fordi 'something else' så ville blive udført under alle omstændigheder !-)
Avatar billede Slettet bruger
27. oktober 2003 - 18:15 #2
Det er klart det første.

"do something else" står udenfor if sætningen, derfor vil det blive udført uanset hvad.
Avatar billede redhat9user Nybegynder
27. oktober 2003 - 18:16 #3
Næh, den øverste fordi det kan blive helt uoverskueltgt hvor der temineres hvis konstruktionen bliver lidt mere kompleks end eksemplet, og fordi du oftest har brug for at udføre mere efter betingelsen.
Avatar billede riversen Nybegynder
27. oktober 2003 - 18:17 #4
ja, og jeg er nig med de 3 andre :-)
Avatar billede googolplex Novice
27. oktober 2003 - 18:33 #5
Ok, jeg tænkte bare det var ligegyldigt at skrive else, når return/die/exit jo afslutter scriptet :-)
Avatar billede Slettet bruger
27. oktober 2003 - 19:01 #6
return afslutter ikke noget... die og exit gør, men det er ikke en pæn måde at kode på ;)
Avatar billede erikjacobsen Ekspert
27. oktober 2003 - 19:03 #7
Skal man lave "pæn" kode, kan jo vedtage med sig selv kun et
lave een return, og kun som det sidste i en funktion. Det gør
debugging nemmere - der er fx kun eet sted man skal sætte en
testudskrift ind.

Og return afslutter!
Avatar billede googolplex Novice
27. oktober 2003 - 19:06 #8
erikjacobsen:

Hvad så med dette:

if (something)
{
    return true;
}
else
{
    return false;
}

Er det ikke korrekt, der er jo 2 return ?
Avatar billede erikjacobsen Ekspert
27. oktober 2003 - 19:13 #9
Jo, det virker. Men synes du ikke bedre om det her

  function funnycheese($cheese) {
    $result=false;
    if (eregi('gamle',$cheese)) {
      $result=true;
    }
    // print "FunnyCheese: $cheese er $result<br>\n";  // testudskrift
    return $result;
  }

Du kan dels nemmere lave en testudskrift, og nemmere arbejde videre
på resultatet senere.
Avatar billede googolplex Novice
27. oktober 2003 - 19:16 #10
Ok, det kan jeg godt se, synes bare altid det er det andet folk bruger :(
Avatar billede erikjacobsen Ekspert
27. oktober 2003 - 19:24 #11
Hvem siger de har ret. At man *kan* gøre noget, betyder jo ikke at det er det man  *skal* gøre
Avatar billede googolplex Novice
27. oktober 2003 - 19:28 #12
Læg nogle svar folkens :)
Avatar billede googolplex Novice
29. oktober 2003 - 18:25 #13
erik: læg et svar !!
Avatar billede erikjacobsen Ekspert
29. oktober 2003 - 20:55 #14
Skidt med det - jeg har ikke løst et problem, blot kommet med en mening om tingene.
Avatar billede googolplex Novice
29. oktober 2003 - 21:26 #15
Nå ok :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester