Quel est le meilleur style de code JavaScript ? C'est peut-être une question difficile à satisfaire pour tout le monde. Posons donc une autre question : quel style de code est le plus populaire ?
sideeffect.kr a analysé du code open source hébergé sur GitHub et a obtenu des résultats intéressants. Jetons un coup d'œil.
Virgules finales vs. virgules initiales
Virgule finale :
var foo = 1,
bar = 2,
baz = 3;
var obj = {
foo: 1,
bar: 2,
baz: 3
};
Virgule initiale :
var foo = 1
, bar = 2
, baz = 3;
var obj = {
foo: 1
, bar: 2
, baz: 3
};
Virgule finale : 92.345% ; virgule initiale : 7.655%. (D'après 1,100,251 commits.)
Espaces et tabulations
De nos jours, tout le monde préfère les espaces. Utiliser une indentation par espaces garantit que différents développeurs et différents paramètres d'éditeur voient le même résultat.
Espaces : 81.1% ; tabulations : 18.9%. (D'après 2,019,550 commits.)
Faut-il ajouter un espace après les noms de fonctions
Sans espace
function foo() {
return "bar";
}
Avec espace
function foo () {
return "bar";
}
Sans espace : 67.424% ; avec espace : 32.576%. (D'après 1,212,488 commits.)
Présence ou non d'un espace entre les paramètres et les parenthèses
Sans espace
function fn(arg1, arg2) {
//or
if (true) {
Avec espace
function fn( arg1, arg2 ) {
// ...
}
if ( true ) {
// ...
}
Sans espace : 94.31% ; avec espace : 5.69%. (Sur la base de 1,514,971 commits.)
Présence ou non d'espaces autour des deux-points dans les littéraux d'objet
Espace après les deux-points
{
foo: 1,
bar: 2,
baz: 3
}
Pas d'espace après les deux-points
{
foo:1,
bar:2,
baz:3
}
Espace avant et après les deux-points
{
foo : 1,
bar : 2,
baz : 3
}
Espace après : 62.955% ; pas d'espace : 22.891% ; espace avant et après : 14.154%. (Sur la base de 1,300,035 commits.)
Personnellement, je trouve que l'absence d'espace est trop serrée et qu'il est difficile de distinguer rapidement les clés et les valeurs. Quant aux espaces des deux côtés, il faudrait probablement aligner les deux-points pour que cela ait l'air net. D'après les statistiques, la plupart des programmeurs sont trop paresseux pour aligner les deux-points (ou peut-être que les IDE ou éditeurs de la plupart des programmeurs ne sont pas assez intelligents ?).
Instructions conditionnelles
Avec espace
if (true) {
//...
}
while (true) {
//...
}
switch (v) {
//...
}
Sans espace
if(true) {
//...
}
while(true) {
//...
}
switch(v) {
//...
}
Avec espace : 78.276% ; sans espace : 21.724%. (Sur la base de 1,163,316 commits.)
Guillemets simples, guillemets doubles
Guillemets simples : 56.791% ; guillemets doubles : 43.209%. (Sur la base de 1,705,910 commits.)
Résumé
Donc, le style de code le plus populaire est :
- Virgules finales
- Indentation par espaces
- Pas d'espace après le nom de fonction
- Pas d'espace entre les paramètres de fonction et les parenthèses
- Espace après les deux-points dans les littéraux d'objet, pas d'espace avant
- Espace après les mots-clés d'instruction conditionnelle
Ce qui est populaire n'est pas nécessairement bon (par exemple, la grippe), mais du point de vue de la communication, écrire du code dans un style populaire peut rendre votre code plus familier à la plupart des gens.