Strict mode
Utiliser le “mode strict” vous permet de protéger une partie, ou l'entier de votre code. Pour ce faire, il suffit d'écrire:
'use strict';
Une fois ces termes spécifiés, tout le reste de votre code, ce qui se trouve donc en dessous, sera sécurisé. Nous pouvons nous demander pourquoi ne pas l'activer dans tous les cas. Et bien, comme pour d'autres cas, tous les navigateurs ne fonctionnant pas tous de la même manière, certains ne vont pas réagir correctement à votre code. C'est pourquoi il faudrait, dans le meilleur des cas, toujours, le déclarer uniquement lorsque cela est nécessaire.
Ce mode a néanmoins de grands avantages à être déclaré rapidement dans notre script. Il permet d'éviter des erreurs et de régler des bugs présents dans le langage JS. De ce fait, on entend:
- Le “mode strict” nous empêche parfois de faire des manipulations qui pourraient provoquer des erreurs
- Il nous permet de nous rendre compte d'erreur qui pourrait être commise sans que le langage nous la révèle.
Par exemple, si en mode strict, vous faites une erreur de frappe lors de la saisie d'une variable, la console va vous l'indiquer, ce qui n'est pas forcément le cas sans ce mode.
let hasMinimumLegalAge = false;
let hasBirthday = true;
if (hasBirthday) {hasMinimmLegalAge=true};
Le code précédent ne provoque aucune erreur sans le mode strict alors que c'est le cas en “mode strict”. Il est donc parfois difficile de se rendre compte d'une erreur sans lui.
Ce mode nous donne aussi des informations concernant les mots réservés pour de futures utilisations.
Par exemple:
const interface = "Audio"
Pas d'erreur de base, mais ce mot est effectivement réservé lorsque l'on change de mode. Cela est fait pour nous éviter d'utiliser des mots qui auront sans doute une utilisation par le langage plus tard afin que notre code soit toujours adapté dans le futur.
Liens utiles
Le mode strict
Pour en savoir plus sur ce que vous permet le “mode strict”, vous pouvez suivre ce lien vers le site MDN. Vous aurez accès à des explications et des exemples très spécifiques.