ECMAScript / ECMA-262 Edition 5.1ベースのJavaScript文法
strict modeは、厳格モード、strictモードと言ってもよく、実装・処理系に依存しないECMAScriptコーディングを行う場合のモードです。
'use strict';
"use strict";
前置指定・指定プロローグ(Directive Prologue)として以下の何れかの書式による use strict 指定(Use Strict Directive)を行うことを指します。
Perlとは異なり、JavaScriptの use strict 指定においては、文字列 use strict をシングルクォートかダブルクォートで括ります。
尚、use strict 指定は、必要に応じてソースコード内の任意の個所で行うことができ、実装によっては複数個所記述できるケースもありますが、他の実装では複数個所にある場合、警告を発する場合もあるものとされています。
strictモードは、ECMAScript(JavaScript)のコードとして唯一、(あるブロック内のみ有効といったような)ローカル効果を持つことからstrictモードとそうでないコードの混在があるものとされています。
ちなみにJavaScriptで唯一のある種形式的な型宣言である var は、混在する場合も含め、 strictモードとそうでない場合何れでも使用することが(仕様上、実装に要求される為、)可能となっています。