Уроки JavaScript – строгий режим (strict-mode)

Когда разработчик пишет скрипты в строгом режиме, это облегчает ему создание «безопасного» JavaScript. По умолчанию JavaScript позволяет программисту писать код немного небрежно, например, не объявлять переменные с помощью var при первом их появлении. Хотя это может показаться удобным для некоторых разработчиков, такой подход может быть причиной многих ошибок, когда имя переменной написано с ошибкой или случайно указано вне ее области действия.

Программисты любят заставлять компьютер делать за них скучные вещи и автоматически проверять их работу на наличие ошибок. Это то, что позволяет делать директива use strict в JavaScript, которая превращает ошибки в написании кода в JavaScript ошибки.

 

Чтобы использовать строгий режим в своем скрипте, вам достаточно лишь указать эту директиву в начале JavaScript файла:

// Синтаксис строгого режима для всего скрипта
"use strict";
var v = "Включен строгий режим!";

 

или вы можете добавить строгий режим на уровне функции:

function func() {
 // Синтаксис строгого режима на уровне функции
 'use strict';
 function func_nested() {
  return "здесь тоже строгий режим";
 }
 return "Включен строгий режим  " + func_nested();
}
function func2() {
 return "А здесь уже не включен строгий режим";
}

 

Добавив эту директиву в файл или функцию JavaScript, мы заставляем движок JavaScript работать в строгом режиме, который отключает некоторый набор поведений, который обычно нежелателен в больших JavaScript проектах. Помимо прочего, строгий режим влияет на следующие моменты:

  • Переменные могут быть объявлены только тогда, когда им предшествует ключевое слово var
  • Попытка записи в свойства только для чтения приводит к ошибке
  • Конструкторы должны вызываться с ключевым словом new
  • Ключевое слово this не является неявно связанным с глобальным объектом
  • Разрешено ограниченное использование eval()
  • Защищает программиста от использования зарезервированных (системных) ключевых слов или особых ключевых слов в качестве имен переменных

 

Строгий режим отлично подходит для новых проектов, но может оказаться сложным для внедрения в более старые проекты. Внедрение строго режима может вызывать проблемы, если, например, вы объединяете все ваши js-файлы в один большой файл, поскольку это может привести к тому, что все объединенные файлы будут выполняться в строгом режиме.

 

Строгий режим не является обязательным к выполнению, и может игнорироваться более ранними версиями JavaScript. Строгий режим (use strict) поддерживается в таких браузерах:

  • Internet Explorer с 10 версии
  • Firefox с 4 версии
  • Chrome с 13 версии
  • Safari с 5.1 версии
  • Opera с 12 версии

 

 

Recent Posts

Разница между Изображением обложки и Избранным изображением в WordPress

Визуальная привлекательность является ключевой особенностью любого сайта на ВордПрессе. Посетители чаще будут открывать ссылки, украшенные…

3 дня ago

15 классических вопросов на собеседовании, к которым следует быть готовым программисту

Любые собеседования всегда волнуют, и даже могут вызвать определенную степень нервозности. Однако, если вы будете…

5 дней ago

Артур Шопенгауэр

Изменить я этого не могу, остается извлекать из этого пользу Артур Шопенгауэр  

6 дней ago

Эрнест Хемингуэй

Если вас что-то ранит, значит, вам не все равно Эрнест Хемингуэй  

2 недели ago

Как создать собственный URL-адрес для входа в WordPress

По умолчанию после каждой установки WordPress есть три основных URL-адреса для входа в админку: {домен}/wp-admin.php,…

2 недели ago

Как отслеживать производительность фрилансера без сложного софта

Производительность – это валюта фрилансера. Когда ты работаешь сам на себя, никто не спросит: "Сколько…

2 недели ago