A friend is one who knows us, but loves us anyway.
1
| var blaat = (iets == true) ? "hoi" : null; |
Niet echt netjes trouwens, als je geen else wilt moet je geen shorthand if() gebruiken.
[ Voor 39% gewijzigd door AtleX op 17-01-2008 17:04 ]
Sole survivor of the Chicxulub asteroid impact.
Ik mis ook een klein beetje wat je zelf hebt geprobeerd en waarom je zoektocht op het internet niet veel heeft opgeleverd.
Ik zou gewoon voor de eerste optie gaan ipv een shorthand te gebruiken en vervolgens weer onzin toevoegt om het werkend te krijgen
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
Met btm00000009
[ Voor 76% gewijzigd door SchizoDuckie op 17-01-2008 16:51 ]
A friend is one who knows us, but loves us anyway.
disjfa - disj·fa (meneer)
disjfa.nl
1
| if(var) doSomething(); |
Zeer belangrijke informatie: Inventaris
Eerst ben je het oneens met BtM, en vervolgens post je zijn manier nogmaalsCopyman schreef op donderdag 17 januari 2008 @ 17:00:
Niets in je else doen is een rare keuze, net als BtM909 ook al vermeldt. Waarom niet gewoon zo:JavaScript:
1 if(var) doSomething();
disjfa - disj·fa (meneer)
disjfa.nl
Als je geen else nodig hebt, of als het niet midden in een statement hoeft is een if gewoon duidelijker. Als je wat meer over die constructie wil zoeken is het ook wel handig om de naam van het beestje te noemen: ternary operator.
{signature}
Het staat me bij dat het veel efficienter (qua cpu gebruik) is dan een gewone if.
A friend is one who knows us, but loves us anyway.
De ? wordt de ternary operator genoemd trouwens.
Gooi de pagina eens door de profiler van Firebug (Console -> Profile) heen. Dan kan je zien waar de meeste rekentijd in gaat zitten.
Don't erase all files?
[Yes] [No]
Of je accepteert dat niemand het een boeiende optimalisatie vindt, als het uberhaupt al beter is.Oysterhoys schreef op donderdag 17 januari 2008 @ 18:12:
Ik had er wel degelijk naar gezocht, maar niemand die het hier ook blijkbaar weet.
Dat neemt niet weg dat andere constructies wel een voordeel kunnen bieden. Merk trouwens op de een switch statement de leesbaarheid verhoogt tov meerdere if statements op dezelfde variabele. Dingen lelijk opschrijven moet je alleen doen als je weet wat je doet en als de winst substantieel (en nodig?) is.
{signature}
Ik kan me bijna niet voorstellen dat het wat uitmaakt. Het blijft een check en conclusie, zowel bij een normale if als een shorthand if.Oysterhoys schreef op donderdag 17 januari 2008 @ 18:20:
Net als een case efficenter is dan veel if then elses, en globale variabelen 'zwaar' zijn.
Ik had toevallig een script met heel veel if ' s, vandaar.
Voordeel zelfs aan een normale if is dat er geen else is waar rekening mee gehouden hoeft te worden. Als ik moest gokken welke dan al het meest efficient was, dan zou ik gaan voor de normale if
Tegenwoordig in tijden van gigabytes smijten over internet is filesize amper een probleem. Meer nuttiger is een goedlopende script (juiste routines en controles) zodat serverload laag blijft.
Ik werk nog niet veel met shorthand, en daar komt inderdaad 1 belangrijke reden bij kijken: leesbaarheid en makkelijker debuggen op fouten. Verder kan ik makkelijker nesten en tabben.
Als er veel shorthand in zit, moet ik wat langer kijken en nadenken. Bij bouwen met veel shorthand is kans op scriptfouten eigenlijk ook wat groter omdat je meer moet opletten wat je tikt, vooral in IF controles. Ik vind zelf makkelijker om gewoon tussen { } te plaatsen, zeker als er veel code in zit.
1
| var x = 'abc' + (a?'d':'e') + 'fgh'; |
Dit scheelt een paar regels met stringverlenging en maakt het daardoor sneller en imho overzichtelijker.
[ Voor 29% gewijzigd door Bosmonster op 18-01-2008 10:03 ]