Javascript a une fonctionnalité appelée Insertion automatique des points-virgules. En gros, si l'analyseur rencontre un jeton non valide et que le dernier jeton précédent était un saut de ligne, il insère un point-virgule à l'emplacement du saut de ligne. Cela vous permet en principe d'écrire tout votre code javascript sans point-virgule, mais vous devez connaître certains cas extrêmes, surtout si vous avez un mot clé de retour puis la valeur que vous souhaitez renvoyer sur une nouvelle ligne.
function test(){
// This will return 'undefined', because return is a valid statement
// and "john" is a valid statement on its own.
return
"john"
}
À cause de ces pièges, des dizaines d'articles portant des titres tels que "L'insertion automatique des points-virgules est diabolique", "Toujours utiliser les points-virgules en Javascript", etc.
Mais en Python, personne n’utilise jamais les points-virgules et il a exactement les mêmes pièges.
def test():
# This will return 'undefined', because return is a valid statement
# and "john" is a valid statement on its own.
return
"john"
Fonctionne exactement de la même manière, et pourtant personne n’a une peur mortelle du comportement de Pythons.
Je pense que les cas où le javascript se comporte mal sont assez rares pour pouvoir les éviter facilement. Renvoyer + valeur sur une nouvelle ligne? Les gens font-ils vraiment beaucoup?
Des opinions? Utilisez-vous des points-virgules en javascript et pourquoi?
#
pas «//».