Maison  >  Article  >  interface Web  >  Comment utiliser le mode strict en javascript ? Exemple d'utilisation

Comment utiliser le mode strict en javascript ? Exemple d'utilisation

青灯夜游
青灯夜游original
2018-11-19 16:05:162919parcourir

Comment utiliser le mode strict en javascript ? Cet article vous donnera une brève introduction à ce que signifie le mode strict en JavaScript ? Comment utiliser ? Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.

Que signifie le mode strict ? A quoi ça sert ?

Le mode strict est une nouvelle fonctionnalité d'ECMAScript 5 qui nous permet de placer un programme ou une fonction dans un contexte de fonctionnement "strict". Ce contexte strict empêche certaines actions d'être prises et suscite de nouvelles exceptions.

Nous devons déclarer « use strict » ; indique au navigateur d'utiliser le mode strict, qui est un ensemble de fonctionnalités JavaScript simplifiées et plus sûres.

Avantages de l'utilisation du mode strict : Apporte quelques modifications à la sémantique JavaScript normale.

1. Le mode strict élimine certaines erreurs silencieuses JavaScript en les modifiant pour générer des erreurs.

2. Le mode strict corrige un bug qui rendait difficile l'optimisation des moteurs JavaScript : le code en mode strict peut parfois s'exécuter plus rapidement que le même code en mode non strict.

3. Le mode strict interdit la définition de certaines syntaxes dans les futures versions d'ECMAScript.

4. Il bloque ou génère des erreurs lors d'opérations relativement "dangereuses" (telles que l'accès à des objets globaux).

5. Il désactive les fonctionnalités qui prêtent à confusion ou sont mal pensées.

6. Le mode strict facilite l'écriture de code JavaScript "sûr".

Comment utiliser le mode strict ?

Le mode strict peut être utilisé de deux manières : globalement sur l'ensemble du script, ou appliqué à une seule fonction.

Remarque : le mode strict ne s'applique pas aux instructions de bloc placées entre {} crochets.

Pour appeler le mode strict en utilisant

dans la portée globale de l'ensemble du script, entrez l'instruction exacte « use strict » avant toute autre déclaration (ou « use strict ; ';).

//全脚本严格模式语法

"use strict";
var v ="严格模式脚本!";

Remarque : Il existe un flux dans cette syntaxe : les scripts non conflictuels ne peuvent pas être aveuglément concaténés. Pensez à concaténer un script en mode strict avec un script en mode non strict : toute la concaténation semble stricte ! L'inverse est également vrai : non strict plus strict, et cela aura l'air non strict. Les scripts en mode strict se connectent bien les uns aux autres, et les scripts en mode non strict se connectent bien les uns aux autres. La simple connexion de scripts stricts et non stricts est problématique. Par conséquent, il est recommandé d’activer le mode strict fonctionnalité par fonctionnalité (au moins pendant la période de transition).

Utiliser le mode strict pour les appels de fonction

Pour appeler le mode strict dans une fonction, définissez de la même manière l'instruction exacte sur "use" dans le corps de la fonction avant toute autre instruction stricte "; (ou 'utiliser strict';).

function strict(){

  //功能级严格模式语法
  "use strict";

  function nested(){
     return '在Javascript中'; 
  }

  return "严格模式函数!"+ nested();
}
function notStrict(){ 
 return "非严格模式"; 
}

Exemple d'utilisation du mode strict :

1 En JavaScript ordinaire, une saisie incorrecte d'un nom de variable créera une nouvelle variable globale. . En mode strict, cela générera une erreur, rendant impossible la création accidentelle d'une variable globale

2. En mode strict, il n'est pas autorisé d'utiliser des variables sans les déclarer

//不允许使用变量而不声明它:
"use strict";
x = 3.14; //这会导致错误

. 3. Les objets sont aussi des variables. En mode strict, il n'est pas permis d'utiliser un objet sans le déclarer :

//不允许使用对象而不声明它:
"use strict"
x = {p1:10,p2:20}; //这会导致错误

4. Il n'est pas permis de supprimer des variables (ou des objets) et des fonctions, ni de supprimer des fonctions

"use strict";
//不允许删除变量(或对象)和函数
var x = 3.14;
delete x; //这会导致错误

//也不允许删除功能
function x(p1,p2){}; 
delete x; //这会导致错误
5. La copie des noms de paramètres n'est pas autorisée

“严格使用”;
函数x(p1,p1){}; //这会导致错误
6. Les littéraux à chiffres octaux ne sont pas autorisés

"use strict";
var x = 010; //这会导致错误
7. non autorisé

"use strict";
var x = \ 010; //这会导致错误
8. Non autorisé à écrire des attributs en lecture seule

"use strict";
var obj = {};
Object.defineProperty(obj,“x”,{
   value:0,writable:false
});
   obj.x = 3.14; //这会导致错误
9 Non autorisé à écrire des attributs en lecture seule

"use strict";
var obj = {
   get x(){return 0}
};
obj.x = 3.14; //这会导致错误
10. . Non autorisé à supprimer les attributs non supprimables

"use strict";
delete Object.prototype; //这会导致错误
11. La chaîne "eval" ne peut pas être utilisée comme variable

"use strict";
var eval = 3.14; //这会导致错误
12. variable

"use strict";
var arguments = 3.14; //这会导致错误
13. Non L'instruction with est autorisée

"use strict";
with(Math){
  x = cos(2)
}; //这会导致错误
14. Pour des raisons de sécurité, eval() n'est pas autorisé à créer des variables dans la portée dans laquelle elle est appelée.

"use strict";
eval(“var x = 2”);
alert(x); //这会导致错误
Résumé : Ce qui précède est le résumé de cet article. Tout le contenu, j'espère qu'il sera utile à l'étude de chacun. Pour plus de didacticiels vidéo connexes, veuillez visiter :

Tutoriel JavaScript !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn