25

Why do we still have to use quoted string literal to switch on strict in JS? Surely something a little more strongly 'typed' could be used here, like calling a built in function, say, Object.UseStrict()or something like that. What is the reason behind having to resort to a string literal?

ProfK
  • 49,207
  • 121
  • 399
  • 775
  • 9
    It's succinct and won't cause errors on browsers that don't support it. – Waxen Dec 12 '14 at 17:21
  • 1
    I didn't think it a duplicate of "What does 'use strict' do" because I know what it does. I was asking specifically about its 'syntax'. – ProfK Dec 12 '14 at 17:26

1 Answers1

26

Compatibility across all browsers and JS runtime engines.

E.g., http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/

No new syntax is introduced in order to enable strict mode. This is huge. This means that you can turn strict mode on in your scripts – today – and it’ll have, at worst, no side effect in old browsers.

Dave Newton
  • 158,873
  • 26
  • 254
  • 302