A régi JavaScript motorok esetén nem probléma, ha egy változót nem deklarálunk, az az első értékadáskor is megtörténhet. Ez hibalehetőségeket von maga után. Például ha deklarálunk egy globális változót, de egy függvényen belüli értékadáskor elgépeljük a nevét, nem kapunk hibaüzenetet, létrejön egy új változó a hibás névvel. Az újabb motorok képesek a JavaScript kód szigorúbb értelmezésére, vagyis ha értéket adunk egy deklarálatlan változónak, akkor hibát kapunk.
Bekapcsolása
Helyezzük el a kódban az alábbi sort:
"use strict;"
Az idézőjelek biztosítják, hogy egy régi JavaScript motor ne adjon hibát ismeretlen parancs miatt. Egy sztring önmagában ugyanis nem hiba. Az újabb motorok viszont felismerik a kapcsolót. A kapcsolót elhelyezhetjük a kód legelején a globális területen, ekkor a teljes program futására hatással lesz. Ha egy függvény elején használjuk, akkor arra a függvényre lokális a kapcsoló.
JavaScript modulok esetén nem kell külön megadnunk, mert ott alapértelmezés a strict mód.
Problémák
Ha külső JavaScript kódot is használunk, elképzelhető, hogy az a szigorú móddal ütközik. Ekkor ne használjuk ezt az üzemmódot.
Dokumentáció