Hoisting is Dead: var vs. let vs. const
Rappel
Variables globales 🤮
userName = 'Foo BAR';
console.log(userName); // Foo BARUse strict 😅
'use strict';
userName = 'Foo BAR'; // ReferenceError: userName is not defined'use strict';
console.log(userName); // ReferenceError: userName is not definedHoisting
Variable hoisting
'use strict';
console.log(userName); // ???
var userName = 'Foo BAR';'use strict';
console.log(userName); // undefined
var userName = 'Foo BAR';Function hoisting
Un peu mieux
let
Les variables ne sont accessibles qu'après leur déclaration.
Les variables ne sont accessibles que dans le bloc de code.
const
const permet de déclarer des variables constantes qui ne peuvent pas être réinitialisées.
const n'est pas immutable.
Il est recommandé de déclarer toutes les variables en const sauf quand la réutilisation d'une variable s'avère inévitable.
Cela évite de nombreuses erreurs d'inattention difficiles à diagnostiquer.
L'utilisation de const décourage le recyclage maladroit de variables :
Mis à jour