Wer den ternären Operator benötigt?
the_styles = !the_styles && $('.stylesheet').detach() ||
the_styles.appendTo('head') && null;
Hätten die Ausdrücke um, da sonst die null
Wert des ersten Ausdrucks zu wechseln immer den zweiten Ausdruck zwingen .detach()
ausgewertet werden.
Die einzige Sache über cleveren Code ist, dass wenn Sie nach einer Kaffeepause wieder darauf zurückkommen, es für Sie keinen Sinn ergeben wird. Also das ist viel besser:
if(the_styles) {
the_styles.appendTo('head')
the_styles = null;
}
else {
the_styles = the_styles.detach('.stylesheet');
}
Für mich macht selbst die oben vereinfachte Version keinen Sinn. Die was Teil ist offensichtlich, aber warum macht es das?
Nur ein Ratschlag: der ternäre Operator in einigen anderen Sprachen wird nicht verwendet, um vollständige Anweisungen zu schreiben, sondern nur den Ausdrucksteil (d. H. Den Teil rechts vom '=' Zeichen). In Java würde das überhaupt nicht kompilieren. Es ist besser, keine Gewohnheit daraus zu machen. – FK82