switch (v) { case 1: break; case 2: break; case 3: break; default: break; }
…devient…
switch (v) {
case 1:
break;
case 2:
break;
case 3:
break;
default:
break;
}
C'est peut-être intentionnel, mais je m'attendrais à ce que le case
soit en retrait d'un niveau (en fonction des paramètres).
C'est par conception, selon les conventions de Crockford, http://javascript.crockford.com/code.html , donc - pas un bogue.
À mon humble avis, cela n'a vraiment aucun sens. Le raisonnement de Crockford pour omettre les tirets supplémentaires est le suivant : « Chaque cas est aligné avec le commutateur. Cela évite la sur-indentation. ORLY ?
Je vois votre point cependant. Si c'est par conception et que vous l'aimez ainsi, laissez-le tel quel !
switch (foo) {
case something:
break;
}
^^^^^^^ huge ugly empty space
... et le vrai code est soudainement repoussé de 2 retraits, ce qui est généralement beaucoup plus moche que de simplement traiter switch/case comme un cas spécial non indenté.
De toute évidence, tout est dans l'œil du spectateur.
Je ne suis pas d'accord avec Crockford, avec son idée, il est extrêmement plus difficile de déterminer la fin réelle de l'instruction switch. Selon son raisonnement, pourquoi mettre en retrait des structures de contrôle ? Ils donnent tous une peine d'indentation.
Je pense que ce serait mieux si l'on travaillait sur une résolution de 800x600 :
switch (v) {
case 1:
// code goes here
break;
default:
// code goes here
break;
}
J'adorerais avoir une option pour cela; soit de la manière "normale" (comme j'ai vu des déclarations de commutateur écrites toute ma vie), soit de la manière que j'ai démontrée ci-dessus ; tout sauf la valeur par défaut. Seriez-vous ouvert à un correctif, si vous n'êtes pas personnellement d'accord ou n'en voyez pas la nécessité ?
Génial, merci beaucoup.
Pouvons-nous avoir une option pour cela? Peut-être juste l'ajouter à jslint happy?
Je déteste le lancer dans un espace blanc bâclé pour une instruction switch.
@drewhjava N'hésitez pas à ouvrir un bogue faisant référence à celui-ci demandant cette option
Ce problème ne semble pas résolu ?
Je reçois toujours l'embellissement laid du commutateur. Ce n'était pas réglé ?
par exemple
switch (v) {
case 1:
break;
case 2:
break;
case 3:
break;
default:
break;
}
Ehh. J'ai ajouté une case à cocher "jslint-happy" à jsbeautifier.org.
Parfait, merci :)
Ce problème d'indentation est différent avec le même code sur Windows vs OSX. Le cas d'espèce est https://github.com/gpujs/gpu.js , quand j'exécute yarn make
il embellit le dossier ./src
, en utilisant ce script : https://github.com/ gpujs/gpu.js/blob/012cfff566691a8fa360e0af650a45c616ceff4a/gulpfile.js#L85
Commentaire le plus utile
À mon humble avis, cela n'a vraiment aucun sens. Le raisonnement de Crockford pour omettre les tirets supplémentaires est le suivant : « Chaque cas est aligné avec le commutateur. Cela évite la sur-indentation. ORLY ?
Je vois votre point cependant. Si c'est par conception et que vous l'aimez ainsi, laissez-le tel quel !