"use strict";
En fait, il active le mode strict.
Le mode strict est une fonctionnalité qui vous permet de placer un programme, ou une fonction, dans un contexte d'exploitation "strict". Dans un contexte d'exploitation strict, le formulaire de méthode est lié aux objets comme auparavant. Le formulaire de fonction le lie aux objets indéfinis, et non aux objets de l'ensemble global.
D'après vos commentaires, vous dites qu'il y aura des différences. Mais c'est votre hypothèse. Le code Node.js n'est rien d'autre que votre code JavaScript. Tout le code Node.js est interprété par l'application V8 Moteur JavaScript . Le site Moteur JavaScript V8 est un moteur JavaScript open source développé par Google pour le navigateur web Chrome.
Il n'y aura donc pas de différence majeure dans la façon dont "use strict";
est interprété par le navigateur Chrome et Node.js.
Veuillez lire ce qu'est le mode strict en JavaScript.
Pour plus d'informations :
- Mode strict
- Support du mode strict ECMAScript 5 dans les navigateurs
- Le mode strict arrive en ville
- Tableau de compatibilité pour le mode strict
- Questions sur Stack Overflow : Que fait "use strict" en JavaScript et quel est le raisonnement qui le sous-tend ?
ECMAScript 6 :
Code ECMAScript 6 et mode strict. Voici un résumé de la spécification :
10.2.1 Code du mode strict
Une unité syntaxique ECMAScript script peut être traitée en utilisant une syntaxe et une sémantique en mode strict ou non. Le code est interprété comme un code en mode strict dans les situations suivantes :
- Le code global est un code en mode strict s'il commence par un prologue de directive qui contient une directive Use Strict (voir 14.1.1).
- Le code du module est toujours un code en mode strict.
- Toutes les parties d'une ClassDeclaration ou d'une ClassExpression sont du code en mode strict.
- Le code eval est un code en mode strict s'il commence par un prologue de directive qui contient une directive Use Strict ou si l'appel à eval est un eval direct (voir 12.3.4.1) qui est contenu dans un code en mode strict.
- Un code de fonction est un code en mode strict si la déclaration de fonction, l'expression de fonction, la déclaration de générateur, l'expression de générateur, la définition de méthode ou la fonction fléchée qui lui est associée est contenue dans un code en mode strict ou si le code qui produit la valeur du slot interne [[ECMAScriptCode]] de la fonction commence par un prologue de directive contenant une directive d'utilisation stricte.
- Le code de fonction fourni en tant qu'arguments aux constructeurs intégrés Function et Generator est un code en mode strict si le dernier argument est une chaîne qui, une fois traitée, est un FunctionBody commençant par un prologue de directive contenant une directive Use Strict.
En outre, si vous ne savez pas quelles sont les fonctionnalités prises en charge par votre version actuelle de Node.js, vous pouvez consulter cette page. noeud.vert peut vous aider (il s'appuie sur les mêmes données que les kangax ).