Почему нам все еще нужно использовать строковый литерал в кавычках для включения strict
в JS? Конечно, здесь можно было бы использовать что-то более строго «типизированное», например, вызов встроенной функции, скажем, Object.UseStrict()
или что-то в этом роде. В чем причина использования строкового литерала?
Почему use strict по-прежнему является строковым литералом?
comment
Он лаконичен и не вызовет ошибок в браузерах, которые его не поддерживают.
- person Waxen   schedule 12.12.2014
comment
Я не думал, что это дубликат «Что делает use strict», потому что я знаю, что он делает. Я спрашивал конкретно о его «синтаксисе».
- person ProfK   schedule 12.12.2014
comment
Мне было интересно то же самое, и я согласен, что это не дубликат. В связанной статье не объясняется, почему именно так он включен.
- person Sam Rueby   schedule 05.04.2018
Ответы (1)
Совместимость со всеми браузерами и механизмами выполнения JS.
Например, http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/
Не вводится новый синтаксис для включения строгого режима. Это огромно. Это означает, что вы можете включить строгий режим в своих скриптах - уже сегодня - и в худшем случае он не будет иметь побочных эффектов в старых браузерах.
person
Dave Newton
schedule
12.12.2014