Valentin Jacquemin

Javascript "The Good Parts" en vidéo

Javascript étant l’un des langages les plus utilisés mais en même temps les moins bien compris, les conseils d’un expert sont toujours très utiles. Je l’utilise moi-même beaucoup depuis un an maintenant chez Merck Serono. Le problème avec ce langage (qui parraît être un avantage au départ) étant que très rapidement on arrive avoir un résultat. Javascript ne fait que très peu de vérifications sur le code et ne retournera que rarement une erreur. Donc au final, on est content d’avoir pu produire rapidement un code fonctionnel mais l’objectif d’un bon développeur ne devrait-il pas être de livrer un code clair, maintenable et performant? Sans aller très loin, voici une liste des choses à savoir sur Javascript:

  • Déclarer toutes les variables avec le mot-clé var. L’omission du mot- clé créera une variable globale et ce quelque soit l’emplacement de la déclaration:
function(){
    text = 'hello world'; //variable globale!
    return text;
}

A éviter comme la peste. Une variable globale déclarée dans une fonction écrasant une autre variable légitimement globale (définie par exemple dans une librairie externe) sera un pur cauchemard à débugger! Sans parler des attaques XSS dont fait mention Doug dans sa présentation.1

  • Vérifier une condition uniquement avec un triple opérateur. C’est-à-dire === ou !=== . Oui parce qu’en fait en Javascript : 0 == ’’ donne false mais ’’ == 0 donne true! A ce qu’en dit Doug, des règles régissent ce comportement. On va pas chercher à comprendre ces règles: utilisez toujours === ou !=== pour les conditions d’égalité!

  • Le style n’est pas qu’une affaire de goût. Avec les deux codes suivants:

return
{
    content: [1,2,3];
}
return{
    content: [1,2,3];
}

On peut penser que ce n’est qu’une affaire de goût. Bien nous en garde! Dans le premier cas, Javascript ajoute un point-virgule après le return et ne lance aucune erreur!

3 points à garder à l’esprit lors de développements Javascript mais en visionnant la vidéo on en découvre d’autres et certainement qu’en lisant le bouquin on va encore plus loin. Une fois de plus, Doug Crockford concocte ici une vidéo fort intéressante. Bon visionnage!


  1. JSLint un outil développé par Doug Crockford permet de vérifier ce genre d’erreurs dans votre code. ↩︎