PassFront
  1. PassFront
  2. База знаний
  3. Основы языка

Что такое use strict?

Основы языка

`'use strict'` — директива, включающая строгий режим JavaScript, который делает язык менее «прощающим»: превращает часть тихих ошибок в исключения и запрещает небезопасные конструкции.

Как включить

Строкой в начале файла или функции:

'use strict';

В ES-модулях и классах strict mode включён автоматически.

Что меняет

  • Необъявленные переменные — присваивание без var/let/const кинет ReferenceError (без strict создало бы глобальную).
  • this в обычном вызове — undefined вместо globalThis.
  • Запрещены дубли параметров, восьмеричные литералы 010.
  • Присваивание в read-only свойства и защищённые глобали кидает ошибку.
  • Нельзя использовать with.
  • delete переменной/функции — ошибка.
'use strict';
x = 10; // ReferenceError: x is not defined

Зачем нужен

  • Раньше ловит ошибки.
  • Делает код предсказуемее и безопаснее.
  • Оптимизации движка.

Коротко для собеседования

'use strict' включает строгий режим: необъявленные переменные и присваивания в read-only кидают ошибки, this в обычном вызове — undefined, запрещены дубли параметров и with. В модулях и классах включён автоматически.

Другие вопросы раздела