В стандарте ECMAScript 5 (ES5) для исключения проблем с обратной совместимостью появилась поддержка "строго режима". Этот режим предназначен для написания кода в соответствии со стандартом не ниже ES5, без необходимости поддержки старого кода. Анализатор JS применяет к коду в этом случае более строгие правила проверки.
Включается строгий режим добавлением в первой строке кода "use strict"; (с кавычками, двойными или одинарными) и действует на весь файл. Перед строкой "use script"; допускаются только комментарии.
// file: ok.js
"use strict"; // действует на весь файл
alert("ok");
...
Существует возможность включения строгого режима для отдельной функции, добавлением этой строки непосредственно в начале описания данной функции.
(function() {
"use strict"; // действует только в пределах функции
alert("ok");
}());
Также строгий режим действует по-умолчанию (без необходимости каких-либо дополнительных инструкций) в любом модуле (экспортированном коде).
Особенности строго режима:
- Требование явного объявления переменных
- Запрет дублирования аргументов функций
- "Заморозка" arguments
- Запрет восьмеричных литералов с помощью предшествующего числу нуля (для это начиная с ES5 необходимо добавлять '0o')
повторное объявление ключей объекта- использование оператора with
- использование оператора delete к переменной
Комментариев нет:
Отправить комментарий