Le mode strict fait que votre programme ou votre fonction suit un contexte de fonctionnement strict. Voici maintenant mon dernier post relatif à la use strict
en JavaScript. Ce post est très bénéfique pour les débutants et les rafraîchisseurs.
Qu’est-ce que « use strict » ?
=> Le mode strict fait que votre programme ou votre fonction suit un contexte d’exploitation strict.
Alors, qu’est-ce que cela signifie réellement ?
=> Maintenant, le compilateur lance certaines erreurs silencieuses qui n’étaient pas lancées ou ignorées auparavant. Aussi, ne vous permet pas de faire certaines choses. Voyons quelles sont ces choses.
Que fait exactement le mode strict ?
La variable ne sera pas ajoutée à l’objet global/fenêtre si elle n’est pas déclarée.
designer = "Creativity is everything"var developer = "Docs are life"console.log(designer)// Creativity is everything
Par défaut, si une variable non déclarée est définie, elle est ajoutée à l’objet global/de fenêtre. Cela peut créer une erreur et peut même être difficile à trouver.
Pour éviter de tels scénarios, nous pouvons déclarer use strict. Le mode strict ne permet pas l’utilisation de variables qui n’ont pas été déclarées.
var designer = "Creativity is everything"// YOU PROBABLY MEANT THIS.
En mode strict
'use strict'designer = "Creativity is everything"var developer = "Docs are life"console.log(designer)// ReferenceError: designer is not defined
.
Fonction avec des paramètres nommés en double en mode non strict
En JavaScript normal, nous pouvons répéter les noms des arguments dans les fonctions. L’occurrence tardive de ces arguments remplacera les précédents.
function logItems( y, y ) { console.log(y) console.log(y)}logItems(44,22)// 22// 22
Fonction avec des paramètres nommés en double en mode strict
La fonction ne sera pas établie si elle a des paramètres de même nom.
"use strict"function logItems( y, y ) { console.log(y) console.log(y)}// SyntaxError: Duplicate// parameter name not// allowed in this context
Supprimer l’opérateur en mode strict
Il empêche de supprimer la fonction, les variables et les paramètres de la fonction.
1
"use strict"const x= 4;delete x// SyntaxError: Delete of an// unqualified identifier in// strict mode.
2
"use strict"function LOG() { console.log("Log")}delete LOG// SyntaxError: Delete// of an unqualified// identifier in strict mode.
.
L’opérateur delete en lui-même est utilisé pour supprimer une propriété sur un objet pas les variables, les fonctions, etc.
Des erreurs silencieuses sont lancées en mode strict
Nous allons voir deux exemples….
(Premier)
var user = { name: "Rahul", age: "16", }console.log(user)// { name: 'Rahul', age: '16' }Object.defineProperty(user, "gender", { value: "Male", enumerable: true, writable: false, configurable: false})delete user.gender// No error in consoleconsole.log(user)//{ name: 'Rahul', age: '16', gender: 'Male' }
(DEUXIÈME)
"user strict"var user = { name: "Rahul", age: "16", }console.log(user)// //{ name: 'Rahul', age: '16' }Object.defineProperty(user, "gender", { value: "Male", enumerable: true, writable: false, configurable: false})delete user.gender// No error in consoledelete user.gender// TypeError: Cannot delete property 'gender' of #Object
Comment vérifier si vous êtes en mode strict ?
"use strict"var isStrict = (function() { return !this; })(); console.log(isStrict)// true
var isStrict = (function() { return !this; })(); console.log(isStrict)// false
.
Besoin d’aide
Besoin d’aide pour collecter des fonds pour acheter un clavier mécanique. Cette pandémie a beaucoup touché ma famille donc je ne peux pas demander à mon DAD de le faire. S’il vous plaît aidez-moi.
Merci de lire | ⚡ Happy Learning and Coding